Plurality of robot cleaner and a controlling method for the same

ABSTRACT

A mobile robot according to an embodiment of the present disclosure may include a traveling unit configured to move a main body; a memory configured to store trajectory information of a moving path corresponding to the movement of the main body; a communication unit configured to communicate with another mobile robot that emits a signal; and a controller configured to recognize the location of the another mobile robot based on the signal, and control the another mobile robot to follow a moving path corresponding to the stored trajectory information based on the recognized location. In addition, the controller may control the moving of the another mobile robot to remove at least part of the stored trajectory information, and allow the another mobile robot to follow a moving path corresponding to the remaining trajectory information in response to whether the moving path corresponding to next trajectory information to be followed by the another mobile robot satisfies a specified condition.

CROSS-REFERENCE TO RELATED APPLICATIONS

Pursuant to 35 U.S.C. § 119(a), this application claims the benefit ofthe earlier filing date and the right of priority to Korean ApplicationNos. 10-2018-0051964 and 10-2019-0014051, filed on May 4, 2018 and Feb.1, 2019, respectively, the contents of which is incorporated byreference herein in its entirety.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The present disclosure relates to a plurality of mobile robots thatautonomously move while any one thereof follows another one thereof, anda control method thereof.

2. Description of the Conventional Art

Generally, a mobile robot is a device that automatically performs apredetermined operation while moving by itself in a predetermined areawithout a user's operation. The mobile robot senses obstacles located inthe area and performs its operations by moving close to or away fromsuch obstacles.

Such a mobile robot may include a robot cleaner that performs cleaningwhile moving in an area. The robot cleaner is a cleaner that performscleaning while moving by itself without user's operation.

In this manner, with the development of such a robot cleaner performingcleaning while moving by itself without a user's operation, there is aneed to develop a plurality of robot cleaners for performing cleaningwhile any one thereof follows another one thereof or while collaboratingwith each other without a user's operation.

For example, the prior art document WO2017-036532 discloses a method inwhich a master robot cleaner (hereinafter, referred to as a masterrobot) controls at least one slave robot cleaner (hereinafter, referredto as a slave robot).

The prior art document discloses a configuration in which the masterrobot detects adjacent obstacles by using an obstacle detection deviceand determines its position related to the slave robot using positiondata derived from the obstacle detection device.

In addition, the prior art discloses a configuration in which the masterrobot and the slave robot perform communication with each other via aserver using wireless local area network (WLAN) technology.

According to the prior art document, the master robot can determine theposition of the slave robot but the slave robot cannot determine theposition of the master robot.

Further, in order for the slave robot to determine (decide) the positionof the master robot using the configuration disclosed in the prior artdocument, the master robot must transmit relative position informationregarding the slave robot determined by the master robot to the slaverobot through the server.

However, the prior art fails to disclose such a configuration in whichthe master robot transmits relative position information to the slaverobot via the server.

In addition, even if it is assumed that the master robot transmitsrelative position information, the master robot and the slave robotshould perform communication only through the server. Accordingly, suchcommunication with the server may be disconnected when the master robotor the slave robot is located at a place where it is difficult tocommunicate with a server.

In this case, since the slave robot is unable to receive relativeposition information from the server, the slave robot is unable to knowthe position of the master robot. As a result, there may arise a problemthat follow-up or collaboration among a plurality of robot cleaners isnot efficiently performed.

Furthermore, the robot cleaner changes its moving direction severaltimes while moving to clean a designated cleaning space. For example, itis often required to change a current moving direction frequentlychanges depending on a shape of a cleaning space, a moving mode of therobot cleaner, detection of an obstacle, a topographic feature of thefloor, and the like. Accordingly, a complex trajectory may be left or acomplex moving path may be formed.

When any one of the plurality of robot cleaners follows another one toperform collaboration cleaning, there is a case where it is difficultfor a following cleaner to follow a complex moving path formed by aleading cleaner. Furthermore, even when such follow-up is possible,there is a problem that the entire cleaning time is delayed. This isalso the same for a plurality of mobile robots capable of collaboration.

SUMMARY OF THE INVENTION

An object of the present disclosure is to provide a plurality of mobilerobots capable of moving while any one thereof follows a moving path ofanother one thereof so that there is no interference or collision witheach other, and a control method thereof.

Furthermore, another object of the present disclosure is to provide aplurality of mobile robots that can be controlled to perform flexiblefollow-up without any interruption when any one of the plurality ofmobile robots follows another one thereof, and a control method thereof.

Furthermore, still another object of the present disclosure is toprovide a plurality of mobile robots capable of following roughly inconsideration of flexibility and cleaning time when a moving regionitself is a complex region or leaves a complex moving trajectory orforms a complex moving path, or in a situation where it is judged tohave a large delay of move completion time while moving on the same pathas that of the leading mobile robot, and a control method thereof.

Furthermore, yet still another object of the present disclosure is toprovide a plurality of mobile robots capable of preventing follow-upfrom being interrupted and minimizing the occurrence of a delay of movecompletion time when the cleaning space is a complex region, or evenwhen a leading mobile robot leaves a complex movement trajectory orforms a complex moving path while performing follow-up moving betweenthe plurality of mobile robots, and a control method thereof.

Furthermore, still yet another object of the present disclosure is toprovide a plurality of mobile robots implemented to continue follow-upmoving while minimizing a move completion delay even when movableregions are different from each other due to a difference in the typesand specifications of the plurality of mobile robots, and a controlmethod thereof.

Furthermore, yet still another object of the present disclosure is toprovide a plurality of mobile robots implemented to perform follow-upmoving in a predetermined sector unit when it is sufficient to performan intrinsic function even though a following mobile robot is notrequired to follow a moving path of a leading mobile robot as it is, anda control method thereof.

Accordingly, in the present disclosure, it is implemented that afollowing mobile robot stores the trajectory information of a leadingmobile robot and moves while following a moving path corresponding tothe stored trajectory information so as to efficiently perform flexiblefollow-up without any interruption among a plurality of mobile robots.

On the other hand, depending on a situation such as a difference in thetypes and specifications of the plurality of mobile robots, a state ofthe floor, presence of an obstacle, an operation state of the mobilerobot, and complexity of a moving path corresponding to trajectoryinformation, an exception may be preferably recognized when it issuitable for the moving completion time and efficiency that a followingmobile robot is unable to follow or does not follow a moving path of aleading mobile robot.

As a result, when a moving path corresponding to subsequent trajectoryinformation to be followed by the following mobile robot satisfies apredetermined condition, it is implemented that at least part of thestored trajectory information is removed and the remaining trajectoryinformation is followed.

Here, whether or not the moving path corresponding to subsequenttrajectory information to be followed satisfies a predeterminedcondition may be determined by information on an obstacle acquired basedon a signal sent and received through the memory, the sensor, and thecommunication unit, identification information of the mobile robot,information associated with an operation state of the mobile robot, andfloor state information on which the mobile robot is located.

Specifically, a mobile robot according to an embodiment of the presentdisclosure may include a traveling unit configured to move a main body;a memory configured to store trajectory information of a moving pathcorresponding to the movement of the main body; a communication unitconfigured to communicate with another mobile robot that emits a signal;and a controller configured to recognize the location of the anothermobile robot based on the signal, and control the another mobile robotto follow a moving path corresponding to the stored trajectoryinformation based on the recognized location, wherein the controllercontrols the moving of the another mobile robot to remove at least partof the stored trajectory information, and allow the another mobile robotto follow a moving path corresponding to the remaining trajectoryinformation in response to whether the moving path corresponding to nexttrajectory information to be followed by the another mobile robotsatisfies a specified condition.

Furthermore, in one embodiment, whether or not the moving pathcorresponding to next trajectory information to be followed by theanother mobile robot satisfies a specified condition may be determinedbased on at least one of information on an obstacle sensed through asensor of the main body, identification information of the anothermobile robot, information related to an operating state of the anothermobile robot, and floor state information on which the another mobilerobot is located.

Furthermore, in one embodiment, trajectory information followed by theanother mobile robot in the trajectory information stored in the memorymay be deleted from the memory.

Furthermore, in one embodiment, when a moving path corresponding tofirst trajectory information to be followed at a current location of theanother mobile robot satisfies a specified condition, the controller maytransmit a control command for moving the another mobile robot to alocation corresponding to second trajectory information storedsubsequent to the first trajectory information.

Furthermore, in one embodiment, at least one intermediate trajectoryinformation may be included between the first trajectory information andthe second trajectory information, and the controller may delete thefirst trajectory information and the one or more intermediate trajectoryinformation from the memory in response to the movement of the anothermobile robot to a location corresponding to the second trajectoryinformation.

Furthermore, in one embodiment, when it is sensed that a plurality ofobstacles have approached a location of next trajectory information tobe followed at a current location of the another mobile robot, thecontroller may control the moving of the another mobile robot to followthe main body on another moving path instead of a moving path includingthe next trajectory information.

Furthermore, in one embodiment, the controller may control moving toallow the another mobile robot to follow a moving path corresponding tothe stored trajectory information in a sector unit, and a single sectormay include a moving path corresponding to a plurality of trajectoryinformation.

Furthermore, in one embodiment, the controller may control the anothermobile robot to move on a moving path different from a moving path ofthe main body corresponding to a plurality of trajectory information inresponse to the satisfaction of the specified condition, and thedifferent moving path may have a shorter path length than the movingpath of the main body.

Furthermore, in one embodiment, the controller may control the moving ofthe another mobile robot in a sector unit including a plurality oftrajectory information, remove all trajectory information in a currentsector in response to the satisfaction of the specified condition,determine a next sector based on the current location and movingdirection of the another mobile robot, and control the moving of theanother mobile robot to follow one of the trajectory information in thedetermined next sector.

Furthermore, in one embodiment, the controller may output a controlcommand to change or stop a moving speed of the main body when theanother mobile robot moves away from the main body to follow one of thetrajectory information in the determined next sector.

Furthermore, in one embodiment, the controller may change at least oneof a size and a location of a next sector to detect the next trajectoryinformation of the main body in response to the non-detection of thenext trajectory information of the main body in the next sector.

Furthermore, in one embodiment, the controller may increase the numberof sectors to detect the next trajectory information of the main body inresponse to the non-detection of the next trajectory information of themain body in the next sector.

Furthermore, in one embodiment, the controller may stop the moving ofthe another mobile robot until the main body enters into the next sectorin response to the non-detection of the next trajectory information ofthe main body in the next sector.

Furthermore, in one embodiment, the controller may control the moving ofthe another mobile robot to move on a path connected by a shorteststraight line from a current location of the another mobile robot to acurrent location of the main body, instead of a moving pathcorresponding to the trajectory information of the main body detectedfor a predetermined period of time, in response to a change in themoving direction of the main body more than a reference number of timesfor the predetermined period of time.

Furthermore, in one embodiment, the controller may control the moving ofthe another mobile robot to remove the trajectory information of themain body in a moving region in which the main body has entered, andfollow trajectory information after the main body moves out of therelevant moving region in response to whether a width of the enteredmoving region is sensed less than a reference range.

Furthermore, in one embodiment, the controller may transmit a signalcorresponding to a moving stop command to the another mobile robot whenit is determined that a region in which the main body enters a non-entryregion of the another mobile robot, and control the moving of theanother mobile robot to follow a moving path corresponding to thetrajectory information of the main body stored subsequent to moving outof the relevant region when it is sensed that the main body moves out ofthe relevant region.

In addition, a plurality of mobile robots according to an embodiment ofthe present disclosure may be a plurality of mobile robots including afirst mobile robot and a second mobile robot, wherein the first mobilerobot communicates with the second mobile robot that emits a signal torecognize the location of the second mobile robot, stores the trajectoryinformation of a moving path corresponding to the movement of the firstmobile robot, and controls the second mobile robot to follow a movingpath corresponding to the stored trajectory information based on therecognized location of the second mobile robot, and the first mobilerobot removes at least part of the stored trajectory information, andcontrols the second mobile robot to follow a moving path correspondingto the remaining trajectory information in response to whether themoving path corresponding to next trajectory information to be followedat a current location of the second mobile robot satisfies a specifiedcondition.

In addition, a control method of a mobile robot according to anembodiment of the present disclosure may include storing trajectoryinformation of a moving path corresponding to the movement of a mobilerobot main body; communicating with another mobile robot that emits asignal to recognize the location of the another mobile robot;controlling the moving of the another mobile robot such that the anothermobile robot follows a moving path corresponding to the storedtrajectory information based on the recognized location; sensing that amoving path corresponding to next trajectory information to be followedby the another mobile robot satisfies a specified condition; andcontrolling the moving of the another mobile robot to remove part of thestored trajectory information such that the another mobile robot followsa moving path corresponding to the remaining trajectory informationaccording to the sensing.

Furthermore, in one embodiment, whether or not the specified conditionis satisfied may be determined by at least one of information on anobstacle sensed through a sensor of the main body, identificationinformation of the another mobile robot, information related to anoperating state of the another mobile robot, and floor state informationat a current location of the another mobile robot.

Furthermore, in one embodiment, the method may further include deletingtrajectory information followed by the another mobile robot from thestored trajectory information.

As described above, according to a plurality of mobile robots accordingto an embodiment of the present disclosure, a following mobile robot mayperform cleaning while sequentially following a movement trajectory of aleading mobile robot at normal times, but roughly follow the leadingmobile robot by omitting part of the movement trajectory of the leadingmobile robot when the movement trajectory is detected within in acomplex region or forms a complex sector, thereby solving a delayproblem in the move completion time while maintaining the cleaningefficiency according to follow-up.

In addition, when the leading mobile robot changes its moving directionor enters a narrow region several times in a short period of time evenif it does not encounter a complex region or sector, the followingmobile robot may be controlled to move straight and follow the leadingmobile robot by removing a movement trajectory for a predeterminedperiod of time or a movement trajectory in a narrow region, therebyminimizing a time delay due to follow-up.

BRIEF DESCRIPTION OF THE DRAWING

The accompanying drawings, which are included to provide a furtherunderstanding of the invention and are incorporated in and constitute apart of this specification, illustrate embodiments of the invention andtogether with the description serve to explain the principles of theinvention. In the drawings:

FIG. 1 is a perspective view showing an example of a mobile robotaccording to the present disclosure.

FIG. 2 is a plan view of the mobile robot illustrated in FIG. 1.

FIG. 3 is a side view of the mobile robot illustrated in FIG. 1.

FIG. 4 is a block diagram showing exemplary components of a mobile robotaccording to an embodiment of the present disclosure.

FIG. 5A is a conceptual view illustrating network communication betweena plurality of mobile robots according to an embodiment of the presentdisclosure, and FIG. 5B is a conceptual view illustrating an example ofthe network communication of FIG. 5A.

FIG. 5C is a conceptual view illustrating follow-up moving among aplurality of mobile robots according to an embodiment of the presentdisclosure.

FIGS. 6, 7, 8A, 8B and 8C are views for specifically explaining a methodof more flexibly performing follow-up while a plurality of mobile robotsaccording to an embodiment of the present disclosure maintain apredetermined distance from one another.

FIGS. 9 and 10 are exemplary flowcharts and conceptual views forexplaining that a second cleaner following a first cleaner performs asector moving mode based on obstacle information, according to anembodiment of the present disclosure.

FIGS. 11A, 11B, and 11C are exemplary conceptual views for explainingthat the second cleaner moves while removing a movement trajectorywithin a sector unit, according to an embodiment of the presentdisclosure.

FIGS. 12A, 12B, 12C, and 12D are different exemplary conceptual viewsfor explaining processing in the case where the setting of a sector unitand the movement trajectory of the first cleaner are not detected,according to an embodiment of the present disclosure.

FIGS. 13A, 13B, 13C and 13D are conceptual views showing examples inwhich the second cleaner is allowed to enter but the moving of the firstcleaner is complicated, and thus the movement trajectory of the firstcleaner in the sector unit is removed to allow the second cleaner tomove along the shortest distance, according to the present disclosure.

FIGS. 14A, 14B and 14C are conceptual views for explaining a movingmethod of the first cleaner when the second cleaner is unable to enterthe sector unit, according to an embodiment of the present disclosure.

FIGS. 15A, 15B and 15C are conceptual views illustrating follow-upregistration and follow-up control between a mobile robot and othermobile devices, according to a modified embodiment of the presentdisclosure.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Hereinafter, a mobile robot according to the present disclosure will bedescribed in detail with reference to the accompanying drawings.

Hereinafter, description will be given in detail of embodimentsdisclosed herein. Technical terms used in this specification are merelyused for explaining specific embodiments, and should not be constructedto limit the scope of the technology disclosed herein.

First, the term “mobile robot” disclosed herein may be used as the samemeaning as “robot (for a specific function),” “robot cleaner,” “robotfor cleaning” and “autonomous cleaner,” and those terms will be usedequally.

Furthermore, the term “a plurality of mobile robots” disclosed in thepresent disclosure may be used as “a plurality of robot cleaners” or “aplurality of cleaners”. Furthermore, the term a “first mobile robot” maybe named a “first robot”, a “first robot cleaner”, a “first cleaner”, ora “leading cleaner”. Furthermore, a “second mobile robot” may be named a“second robot”, a “second robot cleaner”, a “second cleaner”, or a“following cleaner”.

FIGS. 1 to 3 illustrate a robot cleaner as an example of a mobile robotaccording to the present disclosure.

Specifically, FIG. 1 is a perspective view showing an example of amobile robot 100 according to the present disclosure, and FIG. 2 is aplan view of the mobile robot 100 illustrated in FIG. 1, and FIG. 3 is aside view of the mobile robot 100 illustrated in FIG. 1.

In this specification, a mobile robot, a robot cleaner, and a cleanerthat performs autonomous moving may be used in the same sense.Furthermore, in this specification, a plurality of cleaners described asan example of a plurality of mobile robots may include at least part ofconfigurations illustrated in FIGS. 1 to 3.

Referring to FIGS. 1 through 3, the robot cleaner 100 performs afunction of cleaning a floor while moving on a predetermined area byitself. Cleaning of a floor mentioned here includes sucking dust(including foreign matter) on the floor or mopping the floor.

The robot cleaner 100 may include a cleaner main body 110, a cleaningunit 120, a sensing unit 130, and a dust container 140.

The cleaner main body 110 is provided with various components inaddition to a controller (not illustrated) for controlling the robotcleaner 100. In addition, the cleaner main body 110 is provided with awheel unit 111 for the moving of the robot cleaner 100. The robotcleaner 100 may move forward, backward, leftward and rightward by thewheel unit 111.

Referring to FIG. 3, the wheel unit 111 includes main wheels 111 a and asub wheel 111 b.

The main wheels 111 a are provided on both sides of the cleaner mainbody 110 and configured to be rotatable in one direction or anotherdirection according to a control signal of the controller. Each of themain wheels 111 a may be configured to be driven independently of eachother. For example, each main wheel 111 a may be driven by a differentmotor. Or each main wheel 111 a may be driven by a plurality ofdifferent axes provided in one motor.

The sub wheel 111 b is configured to support the cleaner body 110 alongwith the main wheel 111 a and assist the moving of the robot cleaner 100by the main wheel 111 a. The sub wheel 111 b may also be provided on acleaning unit 120 to be described later.

The controller is configured to control the driving of the wheel unit111 in such a manner that the robot cleaner 100 autonomously moves onthe floor.

Meanwhile, a battery (not shown) for supplying power to the robotcleaner 100 is mounted on the cleaner body 110. The battery may beconfigured to be rechargeable, and configured to be detachable from abottom portion of the cleaner body 110.

In FIG. 1, a cleaning unit 120 may be disposed in a protruding form fromone side of the cleaner main body 110, so as to suck air containing dustor mop an area. The one side may be a side where the cleaner main body110 moves in a forward direction F, that is, a front side of the cleanermain body 110.

In this drawing, the cleaning unit 120 is shown having a shapeprotruding from one side of the cleaner main body 110 to front and bothleft and right sides. Specifically, a front end portion of the cleaningunit 120 is disposed at a position spaced forward apart from the oneside of the cleaner main body 110, and left and right end portions ofthe cleaning unit 120 are disposed at positions spaced apart from theone side of the cleaner main body 110 in the right and left directions.

As the cleaner main body 110 is formed in a circular shape and bothsides of a rear end portion of the cleaning unit 120 protrude from thecleaner main body 110 to both left and right sides, empty spaces,namely, gaps may be formed between the cleaner main body 110 and thecleaning unit 120. The vacant space is a space between both left andright end portions of the cleaner body 110 and both left and right endportions of the cleaning unit 120, and has a shape recessed in an inwarddirection of the robot cleaner 100.

When an obstacle is caught in the vacant space, the robot cleaner 100may be blocked by an obstacle not to move. In order to prevent this, acover member 129 may be disposed to cover at least part of the vacantspace.

The cover member 129 may be provided on the cleaner main body 110 or thecleaning unit 120. According to the present embodiment, it is shown thatthe cover member 129 is formed in a protruding manner on both sides of arear end portion of the cleaning unit 120, and disposed to cover anouter peripheral surface of the cleaner body 110.

The cover member 129 is disposed to fill at least part of the emptyspace, that is, the empty space between the cleaner main body 110 andthe cleaning unit 120. This may result in realizing a structure capableof preventing an obstacle from being caught in the empty space, or toeasily escape an obstacle even if the obstacle is caught in the emptyspace.

The cover member 129 protruding from the cleaning unit 120 may besupported on the outer circumferential surface of the cleaner main body110.

The cover member 129 may be supported on a rear portion of the cleaningunit 120 if the cover member 129 protrudes from the cleaner main body110. According to this structure, when the cleaning unit 120 is impacteddue to colliding with an obstacle, a part of the impact is transferredto the cleaner main body 110 so as to be dispersed.

The cleaning unit 120 may be detachably coupled to the cleaner main body110. When the cleaning unit 120 is detached from the cleaner main body110, a mop module (not shown) may be detachably coupled to the cleanermain body 110 in place of the detached cleaning unit 120.

Accordingly, the user can mount the cleaning unit 120 on the cleanermain body 110 when the user wishes to remove dust on the floor, and maymount the mop module on the cleaner main body 110 when the user wants tomop the floor.

When the cleaning unit 120 is mounted on the cleaner main body 110, themounting may be guided by the cover member 129 described above. In otherwords, as the cover member 129 is disposed to cover the outercircumferential surface of the cleaner main body 110, a relativeposition of the cleaning unit 120 with respect to the cleaner main body110 may be determined.

The cleaning unit 120 may be provided with a castor 123. The castor 123is configured to assist the moving of the robot cleaner 100, and alsosupport the robot cleaner 100.

The cleaner main body 110 is provided with the sensing unit 130. Asillustrated, the sensing unit 130 may be disposed on one side of thecleaner main body 110 where the cleaning unit 120 is located, that is,on a front side of the cleaner main body 110.

The sensing unit 130 may be disposed to overlap the cleaning unit 120 inan up and down direction of the cleaner main body 110. The sensing unit130 is disposed at an upper portion of the cleaning unit 120 to sense anobstacle or geographic feature in front of the robot cleaner 100 so thatthe cleaning unit 120 positioned at the forefront of the robot cleaner100 does not collide with the obstacle.

The sensing unit 130 may be configured to additionally perform anothersensing function other than the sensing function.

By way of example, the sensing unit 130 may include a camera 131 foracquiring surrounding images. The camera 131 may include a lens and animage sensor. The camera 131 may convert a surrounding image of thecleaner main body 110 into an electrical signal that can be processed bythe controller. For example, the camera 131 may transmit an electricalsignal corresponding to an upward image to the controller. Theelectrical signal corresponding to the upward image may be used by thecontroller to detect the position of the cleaner main body 110.

In addition, the sensing unit 130 may detect obstacles such as walls,furniture, and cliffs on a moving surface or a moving path of the robotcleaner 100. Also, the sensing unit 130 may sense presence of a dockingdevice that performs battery charging. Also, the sensing unit 130 maydetect ceiling information so as to map a moving area or a cleaning areaof the robot cleaner 100.

The cleaner main body 110 is provided with a dust container 140detachably coupled thereto for separating and collecting dust fromsucked air.

The dust container 140 is provided with a dust container cover 150 whichcovers the dust container 140. In an embodiment, the dust containercover 150 may be coupled to the cleaner main body 110 by a hinge to berotatable.

The dust container cover 150 may be fixed to the dust container 140 orthe cleaner main body 110 to keep covering an upper surface of the dustcontainer 140. The dust container 140 may be prevented from beingseparated from the cleaner main body 110 by the dust container cover 150when the dust container cover 150 is disposed to cover the upper surfaceof the dust container 140.

A part of the dust container 140 may be accommodated in a dust containeraccommodating portion and another part of the dust container 140protrudes toward the rear of the cleaner main body 110 (i.e., a reversedirection R opposite to a forward direction F).

The dust container 140 is provided with an inlet through which aircontaining dust is introduced and an outlet through which air separatedfrom dust is discharged. The inlet and the outlet communicate with eachother through an opening 155 formed through an inner wall of the cleanermain body 110 when the dust container 140 is mounted on the cleaner mainbody 110. Thus, an intake passage and an exhaust passage inside thecleaner main body 110 may be formed.

According to such connection, air containing dust introduced through thecleaning unit 120 flows into the dust container 140 through the intakepassage inside the cleaner main body 110 and the air is separated fromthe dust while passing through a filter and cyclone of the dustcontainer 140. Dust is collected in the dust box 140, and air isdischarged from the dust box 140 and then discharged to the outside.

An embodiment related to the components of the robot cleaner 100 will bedescribed below with reference to FIG. 4.

The robot cleaner 100 or the mobile robot according to an embodiment ofthe present disclosure may include a communication unit 1100, an inputunit 1200, a traveling unit 1300, a sensing unit 1400, an output unit1500, a power supply unit 1600, a memory 1700, a controller 1800, and acleaning unit 1900, or a combination thereof.

Here, it is needless to say that the components shown in FIG. 4 are notessential, and thus a robot cleaner having more or fewer components thanshown in FIG. 4 may be implemented. Also, as described above, each of aplurality of robot cleaners described in the present disclosure mayequally include only some of components to be described below. In otherwords, a plurality of robot cleaners may include different components.

Hereinafter, each component will be described.

First, the power supply unit 1600 includes a battery that can be chargedby an external commercial power supply, and supplies power to the mobilerobot. The power supply unit 1600 supplies driving power to each of thecomponents included in the mobile robot to supply operating powerrequired for the mobile robot to move or perform a specific function.

Here, the controller 1800 may sense the remaining power of the battery,and control the battery to move power to a charging base connected tothe external commercial power source when the remaining power isinsufficient, and thus a charge current may be supplied from thecharging base to charge the battery. Also, as described above, each of aplurality of robot cleaners described in the present disclosure mayequally include only some of components to be described below. Theoutput unit 1500 may display the remaining battery level under thecontrol of the controller.

The battery may be located in a lower portion of the center of the robotcleaner or may be located at either one of the left and right sides. Inthe latter case, the mobile robot may further include a balance weightfor eliminating a weight bias of the battery.

The controller 1800 performs a role of processing information based onan artificial intelligence technology and may include at least onemodule for performing at least one of learning of information, inferenceof information, perception of information, and processing of a naturallanguage.

The controller 1800 may use a machine learning technology to perform atleast one of learning, inference and processing of a large amount ofinformation (big data), such as information stored in the cleaner,environment information around the cleaner, information stored in acommunicable external storage, and the like. Furthermore, the controller1800 may predict (or infer) at least one executable operation of thecleaner based on information learned using the machine learningtechnology, and control the cleaner to execute the most feasibleoperation among the at least one predicted operation.

Machine learning technology is a technology that collects and learns alarge amount of information based on at least one algorithm, and judgesand predicts information based on the learned information. The learningof information is an operation that grasps characteristics, rules, andjudgment criteria of information, quantifies relationship betweeninformation and information, and predicts new data using a quantifiedpattern.

The at least one algorithm used by the machine learning technology maybe a statistical based algorithm, for example, a decision tree that usesa tree structure type as a prediction model, an artificial neuralnetwork copying neural network architecture and functions, geneticprogramming based on biological evolutionary algorithms, clustering todistribute observed examples into subsets of clusters, Monte Carlomethod to compute function values through randomly extracted randomnumbers from probability, or the like.

As a field of machine learning technology, deep learning is a techniquethat performs at least one of learning, judging, and processing ofinformation using an Artificial Neural Network (ANN) or a Deep NeuronNetwork (DNN) algorithm. The deep neural network (DNN) may have astructure of linking layers and transferring data between the layers.This deep learning technology may be employed to learn a vast amount ofinformation through the deep neural network (DNN) using a graphicprocessing unit (GPU) optimized for parallel computing.

The controller 1800 may use training data stored in an external serveror a memory, and may include a learning engine for detecting acharacteristic for recognizing a predetermined object. Here,characteristics for recognizing an object may include the size, shape,and shade of the object.

Specifically, when the controller inputs a part of an image acquiredthrough the camera provided in the cleaner to a learning engine, thelearning engine may recognize at least one object or creature includedin the input image.

In this way, when the learning engine is applied to the moving of thecleaner, the controller 1800 may recognize whether or not there existsan obstacle that obstructs the moving of the cleaner, such as a chairleg, a fan, a specific type of balcony gap, or the like, therebyenhancing the efficiency and reliability of the moving of the cleaner.

Meanwhile, the learning engine as described above may be mounted on thecontroller 1800 or may be mounted on an external server. When thelearning engine is mounted on an external server, the controller 1800may control the communication unit 1100 to transmit at least one imagethat is subjected to analysis to the external server.

The external server may input the image transmitted from the cleanerinto the learning engine and thus recognize at least one object ororganism included in the image. In addition, the external server maytransmit information related to the recognition result back to thecleaner. In this case, the information related to the recognition resultmay include information related to the number of objects included in theimage to be analyzed and a name of each object.

On the other hand, the traveling unit 1300 may include a motor, andoperate the motor to bidirectionally rotate left and right main wheels,so that the main body can rotate or move. At this time, the left andright main wheels may be independently moved. The traveling unit 1300may allow the main body of the mobile robot to move forward, backward,leftward and rightward, or perform curved moving or in-place rotation.

Meanwhile, the input unit 1200 receives various control commands for therobot cleaner from the user. The input unit 1200 may include one or morebuttons, for example, the input unit 1200 may include an OK button, aset button, and the like. The OK button is a button for receiving acommand for confirming sensing information, obstacle information,position information, and map information from the user, and the setbutton is a button for receiving a command for setting the informationfrom the user.

In addition, the input unit 1200 may include an input reset button forcanceling a previous user input and receiving a user input again, adelete button for deleting a preset user input, a button for setting orchanging an operation mode, a button for receiving a command to berestored to the charging base, and the like.

Furthermore, the input unit 1200, such as a hard key, a soft key, atouch pad, or the like, may be installed on a upper portion of themobile robot. In addition, the input unit 1200 may have a form of atouch screen along with the output unit 1500.

On the other hand, the output unit 1500 may be installed on an upperportion of the mobile robot. Of course, the installation location andinstallation type may vary. For example, the output unit 1500 maydisplay a battery state, a moving mode, and the like on the screen.

In addition, the output unit 1500 may output state information insidethe mobile robot detected by the sensing unit 1400, for example, acurrent state of each configuration included in the mobile robot.Moreover, the output unit 1500 may display external state information,obstacle information, position information, map information, and thelike detected by the sensing unit 1400 on the screen. The output unit1500 may be formed with any one of a light emitting diode (LED), aliquid crystal display (LCD), a plasma display panel, and an organiclight emitting diode (OLED).

The output unit 1500 may further include a sound output device foraudibly outputting an operation process or an operation result of themobile robot performed by the controller 1800. For example, the outputunit 1500 may output a warning sound to the outside in accordance with awarning signal generated by the controller 1800.

In this case, the audio output module (not shown) may be means, such asa beeper, a speaker or the like for outputting sounds, and the outputunit 1500 may output sounds to the outside through the audio outputmodule using audio data or message data having a predetermined patternstored in the memory 1700.

Accordingly, the mobile robot according to an embodiment of the presentdisclosure may output environment information on a moving area on thescreen or output it as sound. According to another embodiment, themobile robot may transmit map information or environment information toa terminal device through the communication unit 1100 to output a screenor sound to be output through the output unit 1500.

The memory 1700 stores a control program for controlling or driving therobot cleaner and the resultant data. The memory 1700 may store audioinformation, image information, obstacle information, positioninformation, map information, and the like. Furthermore, the memory 1700may store information related to a moving pattern.

The memory 1700 mainly uses a nonvolatile memory. Here, the non-volatilememory (NVM, NVRAM) is a storage device capable of continuously storinginformation even when power is not supplied thereto, and for an example,the non-volatile memory may be a ROM, a flash memory, a magneticcomputer storage device (e.g., a hard disk, a diskette drive, a magnetictape), an optical disk drive, a magnetic RAM, a PRAM, and the like.

Meanwhile, the sensing unit 1400 may include at least one of an externalsignal detection sensor, a front detection sensor, a cliff detectionsensor, a two-dimensional camera sensor, and a three-dimensional camerasensor.

The external signal detection sensor may sense an external signal of themobile robot. The external signal detection sensor may be, for example,an infrared ray sensor, an ultrasonic sensor, an radio frequency (RF)sensor, or the like.

The mobile robot may detect a position and direction of the chargingbase by receiving a guidance signal generated by the charging base usingthe external signal sensor. At this time, the charging base may transmita guidance signal indicating a direction and distance so that the mobilerobot can return thereto. That is, the mobile robot may determine acurrent position and set a moving direction by receiving a signaltransmitted from the charging base, thereby returning to the chargingbase.

On the other hand, the front sensors or front detection sensors may beprovided at regular intervals on a front side of the mobile robot,specifically, along a side outer circumferential surface of the mobilerobot. The front sensor is located on at least one side surface of themobile robot to detect an obstacle in front of the mobile robot. Thefront sensor may detect an object, especially an obstacle, existing in amoving direction of the mobile robot and transmit detection informationto the controller 1800. In other words, the front detection sensor maysense a protrusion on the moving path of the mobile robot, a householdappliance, a furniture, a wall, a wall corner, and the like, andtransmit the information to the controller 1800.

For example, the frontal sensor may be an infrared ray (IR) sensor, anultrasonic sensor, an RF sensor, a geomagnetic sensor, or the like, andthe mobile robot may use one type of sensor as the front sensor or twoor more types of sensors if necessary.

For an example, the ultrasonic sensors may be mainly used to sense adistant obstacle in general. The ultrasonic sensor may include atransmitter and a receiver, and the controller 1800 may determinewhether or not there exists an obstacle based on whether or notultrasonic waves radiated through the transmitter is reflected by theobstacle or the like and received at the receiver, and calculate adistance to the obstacle using the ultrasonic emission time andultrasonic reception time.

Furthermore, the controller 1800 may compare ultrasonic waves emittedfrom the transmitter and ultrasonic waves received at the receiver todetect information related to a size of the obstacle. For example, thecontroller 1800 may determine that the larger the obstacle is, the moreultrasonic waves are received at the receiver.

In one embodiment, a plurality (e.g., five) of ultrasonic sensors may beinstalled on side surfaces of the mobile robot at the front side alongan outer circumferential surface. At this time, the ultrasonic sensorsmay preferably be installed on the front surface of the mobile robot ina manner that the transmitter and the receiver are alternately arranged.

In other words, the transmitters may be spaced apart from the frontcenter of the main body to the left and right sides, and one or two (ormore) transmitters may be disposed between the receivers to form areceiving area of ultrasonic signals reflected from an obstacle or thelike. With this arrangement, the receiving area may be expanded whilereducing the number of sensors. A transmission angle of ultrasonic wavesmay maintain a range of angles that do not affect different signals toprevent a crosstalk phenomenon. Furthermore, the receiving sensitivitiesof the receivers may be set to be different from each other.

In addition, the ultrasonic sensor may be installed upward by apredetermined angle to output ultrasonic waves transmitted from theultrasonic sensor in an upward direction, and here, the ultrasonicsensor may further include a predetermined blocking member to preventultrasonic waves from being radiated downward.

On the other hand, as described above, the front detection sensor mayuse two or more types of sensors together, and accordingly, the frontdetection sensor may use any one type of infrared sensors, ultrasonicsensors, RF sensors, and the like.

For example, the front detection sensor may include an infrared sensoras a different type of sensor other than the ultrasonic sensor.

The infrared sensor may be installed on an outer circumferential surfaceof the mobile robot together with the ultrasonic sensor. The infraredsensor may also sense an obstacle existing at the front or the side totransmit obstacle information to the controller 1800. In other words,the infrared sensor may sense a protrusion on the moving path of themobile robot, a household appliance, a furniture, a wall, a wall corner,and the like, and transmit the information to the controller 1800.Therefore, the mobile robot may move within a specific region withoutcollision with the obstacle.

On the other hand, a cliff detection sensor (or cliff sensor) may sensean obstacle on the floor supporting the main body of the mobile robotmainly using various types of optical sensors.

In other words, the cliff detection sensor may be installed on a rearsurface of the bottom mobile robot, but may of course be installed in adifferent position depending on the type of the mobile robot. The cliffdetection sensor is a sensor located on a back surface of the mobilerobot to sense an obstacle on the floor, and the cliff detection sensormay be an infrared sensor, an ultrasonic sensor, an RF sensor, a PSD(Position Sensitive Detector) sensor, or the like, which is providedwith a transmitter and a receiver such as the obstacle detection sensor.

For an example, any one of the cliff detection sensors may be installedin front of the mobile robot, and the other two cliff detection sensorsmay be installed relatively behind.

For example, the cliff detection sensor may be a PSD sensor, but mayalso be configured with a plurality of different kinds of sensors.

The PSD sensor detects a short and long distance position of incidentlight with one p-n junction using a semiconductor surface resistance.The PSD sensor includes a one-dimensional PSD sensor that detects lightonly in one axial direction, and a two-dimensional PSD sensor thatdetects a light position on a plane. Both of the PSD sensors may have apin photodiode structure. As a type of infrared sensor, the PSD sensoruses infrared rays. The PSD sensor emits infrared ray, and measures adistance by calculating an angle of the infrared ray reflected andreturned from an obstacle. That is, the PSD sensor calculates a distancefrom the obstacle by using the triangulation method.

The PSD sensor includes a light emitter that emits infrared rays to anobstacle and a light receiver that receives infrared rays that arereflected and returned from the obstacle, and is configured typically asa module type. When an obstacle is detected by using the PSD sensor, astable measurement value may be obtained irrespective of reflectivityand color difference of the obstacle.

The cleaning unit 1900 cleans a designated cleaning area according to acontrol command transmitted from the controller 1800. The cleaning unit1900 scatters dust in the vicinity through a brush (not shown) thatscatters dust in a designated cleaning area, and then drives the suctionfan and the suction motor to suck the scattered dust. In addition, thecleaning unit 1900 may perform mopping in a designated cleaning areaaccording to the replacement of the configuration.

Furthermore, the controller 1800 may measure an infrared ray anglebetween a light signal of infrared ray emitted by the cliff detectionsensor toward the ground and a reflection signal reflected and receivedfrom an obstacle, so as to detect a cliff and analyze a depth of thecliff.

Meanwhile, the controller 1800 may determine whether to pass a cliff ornot according to a ground state of the detected cliff by using the cliffdetection sensor, and decide whether to pass the cliff or not accordingto the determination result. For example, the controller 1800 determineswhether or not a cliff is present and a depth of the cliff through thecliff detection sensor, and then passes through the cliff only when areflection signal is sensed through the cliff detection sensor.

For another example, the controller 1800 may determine a liftingphenomenon of the mobile robot using the cliff detection sensor.

On the other hand, the two-dimensional camera sensor is provided on oneside of the mobile robot to acquire image information related to thesurroundings of the main body during movement.

An optical flow sensor converts a downward image input from an imagesensor provided in the sensor to generate image data in a predeterminedformat. The generated image data may be stored in the memory 1700.

Furthermore, one or more light sources may be installed adjacent to theoptical flow sensor. The one or more light sources irradiate light to apredetermined region of the bottom surface captured by the image sensor.In other words, when the mobile robot moves in a specific region alongthe bottom surface, a predetermined distance is maintained between theimage sensor and the bottom surface when the bottom surface is flat. Onthe other hand, when the mobile robot moves on a bottom surface having anonuniform surface, the robot moves away from the bottom surface by morethan a predetermined distance due to the irregularities of the bottomsurface and obstacles. At this time, the one or more light sources maybe controlled by the controller 1800 to adjust an amount of light to beirradiated. The light source may be a light emitting device capable ofcontrolling the amount of light, for example, a light emitting diode(LED) or the like.

Using the optical flow sensor, the controller 1800 may detect a positionof the mobile robot irrespective of the slip of the mobile robot. Thecontroller 1800 may compare and analyze the image data captured by theoptical flow sensor over time to calculate the moving distance and themoving direction, and calculate the position of the mobile robot on thebasis of the moving distance and the moving direction. Using imageinformation on a bottom side of the mobile robot using the optical flowsensor, the controller 1800 may perform slip-resistant correction on theposition of the mobile robot calculated by another device.

The three-dimensional camera sensor may be attached to one side or apart of the main body of the mobile robot to generate three-dimensionalcoordinate information related to the surroundings of the main body.

In other words, the three-dimensional camera sensor may be a 3D depthcamera that calculates a near and far distance of the mobile robot andan object to be captured.

Specifically, the three-dimensional camera sensor may capture atwo-dimensional image related to the surroundings of the main body, andgenerate a plurality of three-dimensional coordinate informationcorresponding to the captured two-dimensional image.

In one embodiment, the three-dimensional camera sensor may include twoor more cameras that acquire a conventional two-dimensional image, andmay be formed in a stereo vision manner to combine two or more imagesobtained from the two or more cameras so as to generatethree-dimensional coordinate information.

Specifically, the three-dimensional camera sensor according to theembodiment may include a first pattern irradiation unit for irradiatinglight with a first pattern in a downward direction toward the front ofthe main body, and a second pattern irradiation unit for irradiating thelight with a second pattern in an upward direction toward the front ofthe main body, and an image acquisition unit for acquiring an image infront of the main body. As a result, the image acquisition unit mayacquire an image of a region where light of the first pattern and lightof the second pattern are incident.

In another embodiment, the three-dimensional camera sensor may includean infrared ray pattern emission unit for irradiating an infrared raypattern together with a single camera, and capture the shape of theinfrared ray pattern irradiated from the infrared ray pattern emissionunit onto the object to be captured, thereby measuring a distancebetween the sensor and the object to be captured. Such athree-dimensional camera sensor may be an IR (infrared) typethree-dimensional camera sensor.

In still another embodiment, the three-dimensional camera sensor mayinclude a light emitting unit that emits light together with a singlecamera, receive a part of laser emitted from the light emitting unitreflected from the object to be captured, and analyze the receivedlaser, thereby measuring a distance between the three-dimensional camerasensor and the object to be captured. The three-dimensional camerasensor may be a time-of-flight (TOF) type three-dimensional camerasensor.

Specifically, the laser of the above-described three-dimensional camerasensor is configured to irradiate a laser beam in the form of extendingin at least one direction. In one example, the three-dimensional camerasensor may include first and second lasers, wherein the first laserirradiates a linear shaped laser intersecting each other, and the secondlaser irradiates a single linear shaped laser. According to this, thelowermost laser is used to sense obstacles in the bottom portion, theuppermost laser is used to sense obstacles in the upper portion, and theintermediate laser between the lowermost laser and the uppermost laseris used to sense obstacles in the middle portion.

On the other hand, the communication unit 1100 is connected to aterminal device and/or another device (also referred to as “homeappliance” herein) through one of wired, wireless and satellitecommunication methods, so as to transmit and receive signals and data.

The communication unit 1100 may transmit and receive data with anotherlocated in a specific area. Here, the another device may be any devicecapable of connecting to a network to transmit and receive data, and forexample, the device may be an air conditioner, a heating device, an airpurification device, a lamp, a TV, an automobile, or the like. Theanother device may also be a device for controlling a door, a window, awater supply valve, a gas valve, or the like. The another device mayalso be a sensor for detecting temperature, humidity, air pressure, gas,or the like.

Further, the communication unit 1100 may communicate with another robotcleaner 100 located in a specific area or within a predetermined range.

Referring to FIGS. 5A and 5B, a first cleaner 100 a and a second cleaner100 b that perform autonomous moving may exchange data with each otherthrough network communication 50. In addition, the first cleaner 100 aand/or the second cleaner 100 b that perform autonomous moving mayperform a cleaning related operation or a corresponding operation by acontrol command received from a terminal 300 through the networkcommunication 50 or other communication.

In other words, although not shown, a plurality of cleaners 100 a, 100 bthat perform autonomous moving may also perform communication with theterminal 300 through a first network communication and performcommunication with each other through a second network communication.

Here, the network communication 50 may refer to short-rangecommunication using at least one of wireless communication technologies,such as a wireless LAN (WLAN), a wireless personal area network (WPAN™),a wireless fidelity (Wi-Fi) Wi-Fi Direct™, Digital Living NetworkAlliance (DLNA), Wireless Broadband (WiBro), World Interoperability forMicrowave Access (WiMAX™), Zigbee™, Zwave™, Blue-Tooth™, Radio FrequencyIdentification (RFID), Infrared Data Association (IrDA), Ultrawide-Band(UWB), Wireless Universal Serial Bus (USB), and the like.

The network communication 50 may vary depending on a communication modeof the robot cleaners desired to communicate with each other.

In FIG. 5A, the first cleaner 100 a and/or the second cleaner 100 b thatperform autonomous moving may provide information sensed by therespective sensing units thereof to the terminal 300 through the networkcommunication 50. The terminal 300 may also transmit a control commandgenerated based on the received information to the first cleaner 100 aand/or the second cleaner 100 b via the network communication 50.

In FIG. 5A, the communication unit of the first cleaner 100 a and thecommunication unit of the second cleaner 100 b may also directlycommunicate with each other or indirectly communicate with each othervia another router (not shown), to recognize information related to amoving state and positions of counterparts.

In one example, the second cleaner 100 b may perform a moving operationand a cleaning operation according to a control command received fromthe first cleaner 100 a. In this case, it may be said that the firstcleaner 100 a operates as a master and the second cleaner 100 b operatesas a slave. Alternatively, it may be said that the second cleaner 100 bfollows the first cleaner 100 a. In some cases, it may also be said thatthe first cleaner 100 a and the second cleaner 100 b collaborate witheach other.

Hereinafter, a system including a plurality of cleaners 100 a, 100 bperforming autonomous moving according to an embodiment of the presentdisclosure will be described with reference to FIG. 5B.

As illustrated in FIG. 5B, a cleaning system according to an embodimentof the present disclosure may include a plurality of cleaners 100 a, 100b performing autonomous moving, a network 50, a server 500, and aplurality of terminals 300 a and 300 b.

The plurality of cleaners 100 a, 100 b, the network 50 and at least oneterminal 300 a may be disposed in a building 10 while another terminal300 b and the server 500 may be located outside the building 10.

The plurality of cleaners 100 a, 100 b are cleaners that performcleaning while moving by themselves, and may perform autonomous movingand autonomous cleaning. Each of the plurality of cleaners 100 a, 100 bmay include a communication unit 1100, in addition to the movingfunction and the cleaning function.

The plurality of cleaners 100 a, 100 b, the server 500 and the pluralityof terminals 300 a and 300 b may be connected together through thenetwork 50 to exchange data. To this end, although not shown, a wirelessrouter such as an access point (AP) device and the like may further beprovided. In this case, the terminal 300 a located in the building(internal network) 10 may access at least one of the plurality ofcleaners 100 a, 100 b through the AP device so as to perform monitoring,remote control and the like with respect to the cleaner. Also, theterminal 300 b located in an external network may access at least one ofthe plurality of cleaners 100 a, 100 b through the AP device, to performmonitoring, remote control and the like with respect to the cleaner.

The server 500 may be wirelessly connected directly through the terminal300 b. Alternatively, the server 500 may be connected to at least one ofthe plurality of cleaners 100 a, 100 b without passing through themobile terminal 300 b.

The server 500 may include a programmable processor and may includevarious algorithms. By way of example, the server 500 may be providedwith algorithms related to performing machine learning and/or datamining. As an example, the server 500 may include a speech recognitionalgorithm. In this case, when receiving voice data, the received voicedata may be output by being converted into data in a text format.

The server 500 may store firmware information, operation information(course information and the like) related to the plurality of cleaners100 a, 100 b, and may register product information regarding theplurality of cleaners 100 a, 100 b. For example, the server 500 may be aserver operated by a cleaner manufacturer or a server operated by anopen application store operator.

In another example, the server 500 may be a home server that is providedin the internal network 10 and stores status information regarding thehome appliances or stores contents shared by the home appliances. If theserver 500 is a home server, information related to foreign substances,for example, foreign substance images and the like may be stored.

Meanwhile, the plurality of cleaners 100 a, 100 b may be directlyconnected to each other wirelessly via Zigbee™, Zwave™, Blue-Tooth™,Ultra-wide band, and the like. In this case, the plurality of cleaners100 a, 100 b may exchange position information and moving informationwith each other.

At this time, any one of the plurality of cleaners 100 a, 100 b may be amaster cleaner 100 a and another may be a slave cleaner 100 b. Forexample, the first cleaner 100 a may be a dry cleaner that sucks dust onthe cleaning floor, and the second cleaner 100 b may be a wet cleanerthat mops the floor cleaned by the first cleaner 100 a. Furthermore, thestructures and specifications of the first cleaner 100 a and the secondcleaner 100 b may be different from each other.

In this case, the first cleaner 100 a may control the moving andcleaning of the second cleaner 100 b. In addition, the second cleaner100 b may perform moving and cleaning while following the first cleaner100 a. Here, an operation in which the second cleaner 100 b follows thefirst cleaner 100 a refers to an operation in which the second cleaner100 b performs moving and cleaning by following the first cleaner 100 awhile maintaining a proper distance from the first cleaner 100 a.

Referring to FIG. 5C, the first cleaner 100 a may control the secondcleaner 100 b such that the second cleaner 100 b follows the firstcleaner 100 a.

For this purpose, the first cleaner 100 a and the second cleaner 100 bshould exist in a specific area where they can communicate with eachother, and the second cleaner 100 b should recognize at least a relativeposition of the first cleaner 100 a.

For example, the communication unit of the first cleaner 100 a and thecommunication unit of the second cleaner 100 b exchange IR signals,ultrasonic signals, carrier frequencies, impulse signals, and the like,and analyze them through triangulation, so as to calculate movementdisplacements of the first cleaner 100 a and the second cleaner 100 b,thereby recognizing relative positions of the first cleaner 100 a andthe second cleaner 100 b. However, the present disclosure is not limitedto this method, and one of the various wireless communicationtechnologies described above may be used to recognize the relativepositions of the first cleaner 100 a and the second cleaner 100 bthrough triangulation or the like. This will be described in more detailbelow.

When the first cleaner 100 a recognizes the relative position with thesecond cleaner 100 b, the second cleaner 100 b may be controlled basedon map information stored in the first cleaner 100 a or map informationstored in the server, the terminal or the like. In addition, the secondcleaner 100 b may share obstacle information sensed by the first cleaner100 a. The second cleaner 100 b may perform an operation based on acontrol command (for example, a control command related to a movingdirection, a moving speed, a stop, etc.) received from the first cleaner100 a.

Specifically, the second cleaner 100 b performs cleaning while movingalong a moving path of the first cleaner 100 a. However, the movingdirections of the first cleaner 100 a and the second cleaner 100 b donot always coincide with each other. For example, when the first cleaner100 a moves or rotates up/down/right/left, the second cleaner 100 b maymove or rotate up/down/right/left after a predetermined time, and thuscurrent advancing directions of the first and second mobile robot 100 a,100 b may differ from each other.

Also, a moving speed (Va) of the first cleaner 100 a and a moving speed(Vb) of the second cleaner 100 b may be different from each other.

The first mobile robot 100 a may control the moving speed (Vb) of thesecond mobile robot 100 b to vary in consideration of a distance atwhich the first mobile robot 100 a and the second mobile robot 100 b cancommunicate with each other. For example, if the first cleaner 100 a andthe second cleaner 100 b move away from each other by a predetermineddistance or more, the first cleaner 100 a may control the moving speed(Vb) of the second cleaner 100 b to be faster than before. On the otherhand, when the first cleaner 100 a and the second cleaner 100 b moveclose to each other by a predetermined distance or less, the firstcleaner 100 a may control the moving speed (Vb) of the second cleaner100 b to be slower than before or control the second cleaner 100 b tostop for a predetermined time. Accordingly, the second cleaner 100 b canperform cleaning while continuously following the first cleaner 100 a.

FIGS. 6, 7, 8A, 8B and 8C are views for specifically explaining a methodof more flexibly performing follow-up while a plurality of mobile robots100 a, 100 b according to an embodiment of the present disclosuremaintain a predetermined distance from one another.

First, referring to FIG. 6, the concept of virtual impedance controlapplied to the present disclosure to allow the second cleaner 100 b tofollow the first cleaner 100 a while the plurality of cleaners 100 a,100 b avoid an obstacle without sudden acceleration/stop will bedescribed.

In FIG. 6, it may be assumed that the mobile robot performs cleaningwhile moving from a first position 602 toward a second position 601. Atthis time, it may also be said that a mobile robot existing at the firstposition 602 follows another mobile robot existing at the secondposition 601.

When a mobile robot existing at the first position 602 follows anothermobile robot existing at the second position 601, a plurality ofobstacles (D1, D2) may exist within or in the vicinity of a moving pathof the mobile robot. Here, either one (D1) of the plurality of obstacles(D1, D2) may be a fixed obstacle and the other one (D2) may be a movingobstacle.

The mobile robot may be provided with an obstacle sensor for sensing theplurality of obstacles (D1, D2). The obstacle sensors may be arranged atregular intervals along a side outer circumferential surface of themobile robot, for example. The obstacle sensor may transmit a signalsuch as IR, ultrasonic waves and radio waves toward the plurality ofobstacles (D1, D2) and receive a signal reflected from the plurality ofobstacles (D1, D2) to determine a position of and a distance to theobstacle.

Virtual impedance control is a concept of modeling a relative distanceand relative speed between the mobile robot and the obstacles (D1, D2)using a spring-damper, and then using the relationship of these forcesto perform moving and follow-up while flexibly avoid obstacles.

Specifically, it is assumed that a repulsive force (FO) is generatedbetween the mobile robot and the plurality of obstacles (D1, D2), and anattractive force (Fm) acts between the mobile robot and the secondposition 601 or the mobile robot at the first position 602 and anothermobile robot at the second position 601, and an actual moving directionof the mobile robot is determined in the direction of a composite vector(Fs) of the repulsive force (FO) and the attractive force (Fm).

For example, in FIG. 6, under the assumption that there are springs anddampers between the plurality of obstacles (D1, D2) and the obstaclesensor, and respective distances from the plurality of obstacles (D1,D2) may be put into the springs, and respective speeds may be put intothe dampers to calculate repulsive forces between the plurality ofobstacles (D1, D2) and the cleaner.

To this end, 1) an attractive force (Fm) is calculated using aseparation distance and speed difference from the mobile robot at thefirst position 602 at the head of the mobile robot at the secondposition 601. Next, 2) a first repulsive force (Fo, s) is obtained usinga separation distance and speed difference between the first obstacle610 and the mobile robot 602, and a second repulsive force (Fo, d) isobtained using a separation distance and speed difference between thesecond obstacle 620 and the mobile robot 602 to obtain a composite value(Fo) thereof. Then, 3) a repulsive force (Fo) obtained by combining theattractive force (Fm) and the previous composite value (Fo) is obtained.Finally, 4) the mobile robot moves in an Fs direction, which is acomposite vector of the attractive force (Fm) calculated in the above 1)and the repulsive force composite value (Fo) calculated in the above 2).

On the other hand, in the foregoing concept of virtual impedancecontrol, the mobile robot located at the front point 601, that is, thefirst cleaner 100 a, actually continues to perform moving and cleaning,and continues to transmit information on the moving direction and themoving speed to the another mobile robot at the rear point 602, that is,the second cleaner 100 b. In addition, the moving direction and movingspeed of the first cleaner 100 a may vary depending on the floorstructure of the cleaning area, the dust condition, and the like.

When the first cleaner 100 a and the second cleaner 100 b performcleaning independently, another cleaner may be regarded as an obstacleand only the repulsive force may be taken into account while moving.However, in the present disclosure, since the second cleaner 100 bperforms cleaning while following the first cleaner 100 a, theattractive force (Fm) and the repulsive force (Fo) are alternatelyapplied to the same object.

Specifically, while the second cleaner 100 b follows the first cleaner100 a, the attractive force (Fm) and the repulsive force (Fo) may bealternated on the basis of the determined the follow-up distance.

In one example, the degree of alternation of the attractive force (Fm)and the repulsive force (Fo) may vary depending on the floor state ofthe cleaning area (e.g., inclination, flatness, presence of carpet,etc.), the presence of an obstacle, the dust state of a cleaning space(an area/spot requiring intensive cleaning), and the like.

Furthermore, here, the follow-up distance refers to a separationdistance that must be maintained between the plurality of cleanersduring follow-up. When a separation distance between the plurality ofcleaners becomes too far from the follow-up distance, a relativeposition between each other may no longer be determined to discontinuethe follow-up. On the contrary, when a separation distance between theplurality of cleaners becomes too small compared to the follow-updistance, the cleaners hit each other or suddenly stop to interfere withmoving.

Accordingly, the controller of the first cleaner 100 a may apply andcontrol the attractive force (Fm) when a separation distance between theplurality of cleaners is within the follow-up distance or far from thefollow-up distance, and apply and control the repulsive force (Fo) whenthe separation distance between the plurality of cleaners is within thefollow-up distance.

The application of the attractive force (Fm) corresponds to thedeceleration of the moving speed of the first cleaner 100 a.Furthermore, the application of the repulsive force (Fo) corresponds tothe acceleration of the moving speed of the first cleaner 100 a.

To this end, each of the plurality of cleaners 100 a, 100 b maycontinuously measure a relative position (e.g., distance, direction,etc.) using triangulation techniques based on signal values transmittedand received using an ultrasonic sensor, a BWM sensor, an IR sensor, andthe like. In addition, the moving direction and the moving speed of theplurality of cleaners 100 a, 100 b, particularly, the first cleaner 100a at the head, are continuously calculated using signal values exchangedat two different time points.

The moving speed of the first cleaner 100 a may be calculated throughthe following equation.V1=V0+k(Dmin−Dab)

Here, V0 is a basic moving speed of the first cleaner 100 a, k is aproportional constant, Dmin is a follow-up distance, and Dab is acurrent separation distance between the plurality of cleaners 100 a, 100b. Accordingly, the first cleaner 100 a decelerates as a separationdistance between the plurality of cleaners is larger than the follow-updistance, the first cleaner 100 a accelerates when the separationdistance between the plurality of cleaners approaches the follow-updistance. Accordingly, the second cleaner 100 b following the firstcleaner 100 a may not suddenly accelerate or stop abruptly.

As described above, according to the present disclosure, the repulsiveforce may be applied to an obstacle and the attractive force and therepulsive force may be alternately applied between the plurality ofcleaners 100 a, 100 b according to the separation distance, therebyallowing obstacle avoidance as well as flexible follow-up without anyinterruption.

Hereinafter, a control method for flexible follow-up among a pluralityof cleaners will be described in detail with reference to the flowchartof FIG. 7.

First, the communication unit of the first cleaner 100 a and thecommunication unit of the second cleaner 100 b are communicablyconnected to each other, and the process of recognizing a relativeposition between each other is started (S10).

Specifically, the first cleaner 100 a and the second cleaner 100 btransmit and receive signals to and from each other through an IRsensor, an ultrasonic sensor, a UWB sensor, or the like, disposed on aside outer circumferential surface of each cleaner or embedded in themain body to determine a direction and distance between each other.Since the foregoing sensor is a component for allowing the plurality ofcleaners 100 a, 100 b to determine a relative position between eachother, the sensor may be used in the same concept as the communicationunit.

The first cleaner 100 a and the second cleaner 100 b respectively sendand receive signals, and recognize a relative position between eachother. Here, the signal may be any one of wireless communication signalsusing wireless communication technologies such as Zigbee™, Zwave™, andBluetooth™, in addition to a ultra-wide band (UWB) signal, an infraredsignal, a laser signal, and an ultrasound signal, for example.

The first cleaner 100 a may transmit a first signal through theforegoing sensor and receive a second signal from the second cleaner 100b, thereby recognizing a relative position of the second cleaner 100 bbased on the first cleaner 100 a. Furthermore, the second cleaner 100 bmay transmit a second signal through the foregoing sensor and receive afirst signal received from the first cleaner 100 a, thereby recognizinga relative position of the first cleaner 100 a based on the secondcleaner 100 b.

Specifically, for example, one UWB sensor may be provided in each of theplurality of cleaners 100 a, 100 b, or a single UWB sensor may beprovided in the first cleaner 100 a and at least two UWB sensors in thesecond cleaner 100 b.

The UWB module (or UWB sensor) may be included in the communicationunits 1100 of the first cleaner 100 a and the second cleaner 100 b. Inview of the fact that the UWB modules are used to sense the relativepositions of the first cleaner 100 a and the second cleaner 100 b, theUWB modules may be included in the sensing units 1400 of the firstcleaner 100 a and the second cleaner 100 b.

For example, the first cleaner 100 a may include a UWB module fortransmitting ultra-wide band signals. The transmitting UWB module may betermed as a second type transmitting sensor or a “UWB tag.”

Furthermore, the second cleaner 100 b may include a receiving UWB modulefor receiving ultra-wide band signals output from a transmitting UWBmodule provided in the first cleaner 100 a. The receiving UWB module maybe named as a second type receiving sensor or a “UWB anchor.”

UWB signals transmitted/received between the UWB modules may be smoothlytransmitted and received within a specific space. Accordingly, even ifan obstacle exists between the first cleaner 100 a and the secondcleaner 100 b, if the first cleaner 100 a and the second cleaner 100 bexist within a specific space, they can transmit and receive the UWBsignals.

The first cleaner and the second cleaner may measure the time of asignal transmitted and received between the UWB tag and the UWB anchorto determine a separation distance between the first cleaner 100 a andthe second cleaner 100 b.

Specifically, for example, each of the plurality of cleaners 100 a, 100b may be provided with one UWB sensor, or the first cleaner 100 a may beprovided with a single UWB sensor, and the second cleaner 100 bfollowing the first cleaner 100 a may be provided with a single UWBsensor and at least one antenna or provided with at least two UWBsensors, so that the first cleaner 100 a can measure distances to thesecond cleaner 100 b at two different time points (t1, t2).

The UWB sensor of the first cleaner 100 a and the UWB sensor of thesecond cleaner 100 b radiate UWB signals to each other, and measuredistances and relative speed using Time of Arrival (ToA), which is atime that the signals come back by being reflected from the robots.However, the present disclosure is not limited to this, and mayrecognize the relative positions of the plurality of cleaners 100 a, 100b using a Time Difference of Arrival (TDoA) or Angle of Arrival (AoA)positioning technique.

Specifically, description will be given of a method of determining therelative positions of the first cleaner 100 a and the second cleaner 100b using an AoA positioning technique. In order to use the AoA (Angle ofArrival) positioning technique, each of the first cleaner 100 a and thesecond cleaner 100 b should be provided with one receiver antenna or aplurality of receiver antennas. The first cleaner 100 a and the secondcleaner 100 b may determine their relative positions using a differenceof angles that the receiver antennas provided in the cleaners,respectively, receive signals. To this end, each of the first cleaner100 a and the second cleaner 100 b must be able to sense an accuratesignal direction coming from the receiver antenna array.

Since signals, for example, UWB signals, generated in the first cleaner100 a and the second cleaner 100 b, respectively, are received only inspecific directional antennas, they can determine (recognize) receivedangles of the signals. Under assumption that positions of the receiverantennas provided in the first cleaner 100 a and the second cleaner 100b are known, the relative positions of the first cleaner 100 a and thesecond cleaner 100 b may be calculated based on signal receivingdirections of the receiver antennas.

At this time, if one receiver antenna is installed, a 2D position may becalculated in a space of a predetermined range. On the other hand, if atleast two receiver antennas are installed, a 3D position may bedetermined. In the latter case, a distance d between the receiverantennas is used for position calculation in order to accuratelydetermine a signal receiving direction.

Furthermore, the present disclosure may be implemented to determine arelative position of the second cleaner 100 b only through the firstcleaner 100 a or calculate and determine a relative position of thefirst cleaner 100 a only through the second cleaner 100 b. In thisimplementation example, the first cleaner 100 a may transmit informationrelated to the relative position to the second cleaner 100 b or thesecond cleaner 100 b may transmit information related to the relativeposition to the first cleaner 100 a.

As described above, according to the present disclosure, since theplurality of cleaners 100 a, 100 b may determine relative positions toeach other, and thus follow-up control may be carried out without anyinterruption by determining the relative positions to each otherirrespective of the communication state of the server.

In addition, the first cleaner 100 a and the second cleaner 100 b mayshare the moving state information and the map information with eachother through the respective communication units. Moving stateinformation, map information, obstacle information, and the like maytypically be transmitted from the first cleaner 100 a to the secondcleaner 100 b according to the follow-up relationship between theplurality of cleaners 100 a, 100 b, but information sensed by the secondcleaner 100 b, for example, new obstacle information, may also betransmitted to the first cleaner 100 a.

Next, the second cleaner 100 b performs cleaning while following themoving path of the first cleaner 100 a (S20).

Specifically, the first cleaner 100 a initially cleans a designatedcleaning area, and the second cleaner 100 b performs the cleaning whilefollowing the moving path through which the first cleaner 100 a haspassed. At this time, the second cleaner 100 b may also perform cleaningwhile following the moving speed of the first cleaner 100 a and thecleaning mode on the relevant path.

Meanwhile, in one example, the actual moving path of the second cleaner100 b may not coincide with the moving path of the first cleaner 100 a.

For example, when an obstacle that was not detected when the firstcleaner 100 a had passed is newly sensed at the time when the secondcleaner 100 b passes, the moving path of the second cleaner 100 b may beslightly different from the moving path of the first cleaner 100 a. Atthis time, the first cleaner 100 a may be followed from the closestposition at the time of avoiding the new obstacle.

While the second cleaner 100 b follows the first cleaner 100 a, thefirst cleaner 100 a continuously monitors a separation distance from thesecond cleaner 100 b (S30).

The controller of the first cleaner 100 a continuously monitors arelative position between the first cleaner 100 a and the second cleaner100 b based on signal values acquired through sensors such as UWBsensors, IR sensors, ultrasonic sensors, and the like, respectivelyprovided therein, and determines whether a separation distancecorresponding to the relative position is moving away or getting closer.

According to the monitoring, the controller of the first cleaner 100 amay determine whether a separation distance from the second cleaner 100b deviates from the critical follow-up distance (S40). At this time, thecontroller of the first cleaner 100 a may determine a current movingspeed of the first cleaner 100 a.

Here, the critical follow-up distance denotes a four-way distance withina circle range smaller than a range where a plurality of cleaners candetermine relative positions among one another by a predetermined value.

The critical follow-up distance may include a “minimum follow-updistance” at which the plurality of cleaners 100 a, 100 b can bemaximally close to each other and a “maximum follow-up distance” atwhich the plurality of cleaners 100 a, 100 b can be maximally far awayfrom each other. Therefore, whether or not to deviate from the criticalfollow-up distance may denote that the separation distance between theplurality of cleaners 100 a, 100 b is less than the minimum follow-updistance or greater than the maximum follow-up distance.

When the separation distance approaches the minimum follow-up distance,a repulsive force is applied between the first cleaner 100 a and thesecond cleaner 100 b so as to be controlled to move away from eachother. Furthermore, the separation distance approaches the maximumfollow-up distance, an attractive force is applied between the firstcleaner 100 a and the second cleaner 100 b so as to be controlled tomove closer to each other.

As a result of the determination, when the distance does not deviatefrom the critical follow-up distance, the process returns to step S20.Accordingly, the second cleaner 100 b continues cleaning while followingthe first cleaner 100 a.

As a result of the determination, when the distance deviates from or isexpected to deviate from the critical follow-up distance, the controllerof the first cleaner 100 a varies the moving speed of the traveling unitof the first cleaner 100 a or transmits a stop command to the secondcleaner 100 b (S50).

FIGS. 8A through 8C show various examples in which the first cleaner 100a controls the moving speed of itself or the second cleaner 100 b basedon the critical follow-up distance.

First, (a) of FIG. 8A shows a case where a separation distance (D1)between the first cleaner 100 a and the second cleaner 100 b does notdeviate from the critical follow-up distance (e.g., minimum criticalfollow-up distance), but is determined to be less than the criticalfollow-up distance on the basis of the current moving speeds (V1, V0) ofthe second cleaner 100 a and the second cleaner 100 b.

At this time, as shown in (b) of FIG. 8A, the first cleaner 100 a adds avalue (plus value) obtained by subtracting the expected separationdistance from the critical follow-up distance to the present movingspeed (V1) to change the moving speed of the first vehicle 100 a.Accordingly, the first cleaner 100 a moves at the accelerated movingspeed (V2), and thus the separation distance (D2) from the secondcleaner 100 b increases.

Next, (a) of FIG. 8B shows a case where a separation distance (D3)between the first cleaner 100 a and the second cleaner 100 b does notdeviate from the critical follow-up distance (e.g., maximum criticalfollow-up distance), but is determined to be larger than the criticalfollow-up distance on the basis of the current moving speeds (V1, V0) ofthe second cleaner 100 a and the second cleaner 100 b.

At this time, as shown in (b) of FIG. 8B, the first cleaner 100 a adds avalue (minus value) obtained by subtracting the expected separationdistance from the critical follow-up distance to the present movingspeed (V1) to change the moving speed of the first vehicle 100 a.Accordingly, the first cleaner 100 a moves at the decelerated movingspeed (V3), and thus the separation distance (D4) from the secondcleaner 100 b decreases.

Here, the decelerated moving speed (V3) may include “0”. For example,when the moving speed of the second cleaner 100 b is further reduced, orwhen the separation distance (D3) between the first cleaner 100 a andthe second cleaner 100 b slightly deviates from the critical follow-updistance, the first cleaner 100 a may be controlled to stop.

Next, (a) of FIG. 8C shows a case where it is the same as FIG. 8A that aseparation distance (D5) between the first cleaner 100 a and the secondcleaner 100 b is determined to be less than the critical follow-updistance (e.g., maximum critical follow-up distance), but the firstcleaner 100 a is unable to move at an accelerated speed according to thesurrounding situation.

At this time, as shown in (b) of FIG. 8C, the first cleaner 100 a maytransmit a stop command to the second cleaner 100 b while maintainingthe moving speed of itself. After a predetermined period of timeelapses, when separation distance (D6) between the first cleaner 100 aand the second cleaner 100 b increases, a drive command may betransmitted to the second cleaner 100 b so as to be controlled tocontinue follow-up.

On the other hand, when the moving path of the second cleaner 100 b ischanged from the moving path of the first cleaner 100 a depending on thesurrounding situation, in case where the changed moving path is furtheraway from the separation distance from the first cleaner 100 a, thefirst cleaner 100 a may receive such state information to slow down themoving speed of the first cleaner 100 a or stop the moving of the firstcleaner 100 a for a predetermined period of time so as not to interruptfollow-up.

In the present disclosure, the first cleaner 100 a changes the movingdirection several times according to a shape of cleaning space, acleaning moving mode, sensing of an obstacle, a geographic feature ofthe floor while moving to clean a designated cleaning space.Accordingly, the first cleaner 100 a may leave a complex trajectory orcan form a complex moving path.

In this case, when the second cleaner 100 b follows the moving path ofthe first cleaner 100 a as it is, it may cause an error operation due toinability to enter or a delay in the entire cleaning time.

This may occur especially when the types and specifications of the firstcleaner 100 a and the second cleaner 100 b are different.

For example, when it is a narrow or low region to allow the firstcleaner 100 a to pass therethrough but disallow the second cleaner 100 bto pass therethrough, or when it is a specific floor state (e.g., acarpet or the like is laid), the second cleaner 100 b is unable tofollow the trajectory of the first cleaner 100 a as it is.

Alternatively, for example, when the first cleaner 100 a takes a longtime to pass through due to the complexity of the entered region, asimilar period of time may be required for the second cleaner 100 b todelay the entire cleaning time, thereby reducing cleaning efficiency.

Accordingly, a method of allowing the movement trajectory of the firstcleaner 100 a, which is the leading cleaner, to sense “satisfaction of aspecified condition” while the second cleaner 100 b follows the firstcleaner 100 a to perform cleaning so as to control the second cleaner100 b to move by omitting part of the movement trajectory of the firstcleaner 100 a or move to another moving path temporarily is implemented.

Here, the “satisfaction of a specified condition” denotes a state inwhich the second cleaner 100 b is determined not to follow the nexttrajectory of the first cleaner 100 a at a current position.Accordingly, it may include a case where the second cleaner 100 b isactually unable to follow the next trajectory as well as a case where itis determined that the second cleaner 100 b does not follow inconsideration of time delay although the second cleaner 100 b isactually able to follow the first cleaner 100 a. Furthermore, it mayinclude a case where the second cleaner 100 b is unable to follow thefirst cleaner 100 a regardless of the movement trajectory of the firstcleaner 100 a, such as a case where the first cleaner 100 a is a dry (orsuction) cleaner, the second cleaner 100 b is a wet (or mop) cleaner,and the first cleaner 100 a is cleaning on a carpet.

In addition, the “satisfaction of a specified condition” may bedetermined by at least one of information on an obstacle sensed by thesensor of the first cleaner 100 a (and/or the sensor of the secondcleaner 100 b), identification information of the second cleaner 100 b,information related to the operation state of the second cleaner 100 b,and floor state information at a relative position of the second cleaner100 b.

Here, the information on an obstacle may include information on a sizeof the obstacle, a number of obstacles, and a separation distancebetween the plurality of obstacles. Furthermore, the obstacle mayinclude a fixed obstacle such as a wall, a furniture, a fixture, or thelike, protruded from the floor of the cleaning area to obstruct movingof the cleaner, and a moving obstacle.

In addition, the identification information of the second cleaner 100 bmay include a type of the second cleaner 100 b, a size of the product, aheight of the product, product information, and the like, and theidentification information may be compared with respect to theidentification information of the first cleaner 100 a. Moreover, theidentification information of the second cleaner 100 b may be receivedfrom the second cleaner 100 b at the time of follow-up registration ofthe second cleaner 100 b for the first cleaner 100 a.

Besides, the information related to the operation state of the secondcleaner 100 b denotes moving related information such as a moving mode,a moving direction, a moving speed, and a moving stop of the secondcleaner 100 b. This can be acquired by analyzing signals sent andreceived through a sensor provided in the first cleaner 100 a and asensor provided in the second cleaner 100 b.

Furthermore, the floor state information at a relative position of thesecond cleaner 100 b may be obtained using the above-described relativeposition recognizing method and information acquired through the 3Dsensor/camera sensor of the first cleaner 100 a while passing throughthe relevant position. For example, when the first cleaner 100 a is adry (or suction) cleaner and enters on a carpet to perform cleaning, ifthe following second cleaner 100 b is a wet (or mop) cleaner, then itmay be determined that the second cleaner 100 b satisfies the specifiedcondition based on the floor state information.

Hereinafter, a control operation for allowing the second cleaner toroughly follow the trajectory of the first cleaner when the secondcleaner following the first cleaner satisfies a specified condition willbe described in detail with reference to FIGS. 9 and 10.

Referring to FIG. 9, the process of allowing the first cleaner 100 a andthe second cleaner 100 b to communicate with each other based on asignal (e.g., a UWB signal) so as to obtain a relative position betweeneach other is started (S10).

More specifically, direct communication between the first cleaner 100 aand the second cleaner 100 b is carried out without server communicationby transmitting and receiving signals (e.g., UWB signals) to/from eachother using sensors provided in the first cleaner 100 a and sensorsprovided in the second cleaner 100 b.

The first cleaner 100 a may recognize a relative position of the secondcleaner 100 b based on a first signal transmitted and received through asensor (e.g., a UWB sensor) provided in the first cleaner 100 a and asecond signal transmitted and received through a sensor (e.g., a UWBsensor) provided in the second cleaner 100 b. Since the types of sensorsand signals for obtaining a relative position between each other havebeen described above, and detailed description thereof will be omittedherein.

Then, the first cleaner 100 a stores the trajectory information of themoving path according to the movement of the main body in the memory(S20).

Here, the trajectory denotes a curve in space in which points where thefirst cleaner 100 a sequentially has passed while moving to performcleaning. Furthermore, the trajectory information may include not onlyinformation on a curve forming the trajectory but also information onthe number, order, and interval of the points forming the curve.

Therefore, the trajectory information of the moving path may includeboth information on sequential points forming the moving path of thefirst cleaner 100 a and information on a curve, including allinformation such as the moving order, moving direction, moving speed,in-place rotation, and the like of the moving path of the first cleaner100 a, for example.

In another example, the second cleaner 100 b may store the trajectoryinformation of the moving path according to the movement of the firstcleaner 100 a, based on the relative position of the first cleaner 100a.

Next, based on the relative position of the second cleaner 100 b, thesecond cleaner 100 b moves while following a moving path correspondingto the stored trajectory information of the first cleaner 100 a (S30).

To this end, the first cleaner 100 a may control the second cleaner 100b such that the second cleaner 100 b performs cleaning while followingthe trajectory information of the first cleaner 100 a.

For example, the first cleaner 100 a may calculate a separation distancefrom the second cleaner 100 b based on the time-of-flight (TOF) ofsignals transmitted and received to and from the second cleaner 100 b.At this time, the first cleaner 100 a determines that the separationdistance from the second cleaner 100 b is smaller as the TOF decreases,and the first cleaner 100 a determines that the separation distance fromthe second cleaner 100 b is larger as the TOF increases. In addition,the first cleaner 100 a may be regarded as the center of a circle, and achange in the separation distance may be determined using a distance ofthe second cleaner 100 b existing on the circle at two different timepoints.

Alternatively, in another example, the first cleaner 100 a and thesecond cleaner 100 b may determine a relative position between eachother using a difference in signal receiving angles received at receiverantennas provided therein, respectively, to obtain a change in theseparation distance.

In one example, the moving information of the first cleaner 100 a alongwith the calculated separation distance may be transmitted to the secondcleaner 100 b. Furthermore, the second cleaner 100 b may transmit itsown state information to the first cleaner 100 a.

Here, the moving information may include all information on obstacleinformation, map information, a moving mode, a moving path, floor stateinformation, and a moving speed. Accordingly, the second cleaner 100 bmay perform moving along the moving path of the first cleaner 100 abased on the state information transmitted from the first cleaner 100 a.

On the other hand, while the second cleaner 100 b follows the firstcleaner 100 a, in order not to deviate from follow-up, an attractiveforce (Fm) and a repulsive force (Fo) according to the concept ofvirtual impedance control may be alternately applied on the basis of thedetermined follow-up distance.

Specifically, the first cleaner 100 a may compare the calculatedseparation distance with a specified follow-up distance, and alternatelyapply attractive and repulsive forces according to the concept ofvirtual impedance control based on the comparison result, therebyvariably controlling the moving speeds of the cleaner 100 a and thesecond cleaner 100 b. Accordingly, the second cleaner 100 b maynaturally follow the moving path of the first cleaner 100 a seamlesslywithout any interruption.

For example, when the calculated separation distance is larger than thefollow-up distance, the controller of the first cleaner 100 a may applyan attractive force to decelerate the moving speed of the first cleaner100 a, accelerate the moving speed of the second cleaner 100 b, orperform both the operations, thereby decreasing the separation distance.Furthermore, when the calculated separation distance is too smallcompared to the follow-up distance, the controller of the first cleaner100 a may apply a repulsive force to accelerate the moving speed of thefirst cleaner 100 a, decelerate the moving speed of the second cleaner100 b, or perform both the operations, thereby increasing the separationdistance.

Furthermore, in the present disclosure, receiving sensors may be placedon rear and front sides of the first cleaner 100 a to allow thecontroller of the first cleaner 100 a to recognize the receivingdirection of a signal (e.g., a UWB signal) received from the secondcleaner 100 b. To this end, a UWB sensor may be provided at a rear sideof the first cleaner 100 a, and a UWB sensor or a plurality of opticalsensors may be spaced apart from a front side of the first cleaner 100a. In addition, the second cleaner 100 b may be provided with one ormore UWB sensors and a plurality of receiving antennas.

The first cleaner 100 a may recognize the receiving direction of asignal received from the second cleaner 100 b to determine whether thesecond cleaner 100 b is located on a rear side of the first cleaner 100a. Accordingly, the first cleaner 100 a may determine whether the orderof the first cleaner 100 a and the second cleaner 100 b is reversed.

On the other hand, the second cleaner 100 b may move while following thetrajectory information of the first cleaner 100 a stored in its ownmemory. Next, in step S40, it is sensed that the moving path of the nexttrajectory information among the trajectory information corresponding tothe relative position of the second cleaner 100 b and the storedmovement of the first cleaner 100 a satisfies a specified condition(S40).

The “satisfaction of a specified condition” may be determined by atleast one of information on an obstacle sensed by the sensor of thefirst cleaner 100 a (and/or the second cleaner 100 b), identificationinformation of the second cleaner 100 b, information related to theoperation state of the second cleaner 100 b, and floor state informationat a relative position of the second cleaner 100 b.

For example, when there exist a plurality of obstacles near thetrajectory to be followed next, if the trajectory to be followed next ison a carpet and the second cleaner 100 b is a wet (or mop) cleaner, itmay be sensed that the second cleaner 100 b satisfies a specifiedcondition.

When a state satisfying such a specified condition is detected, thefirst cleaner 100 a or the second cleaner 100 b removes part of thetrajectory information of the first cleaner 100 a stored in the memory,and the second cleaner 100 b is controlled to follow a moving pathcorresponding to the remaining trajectory information (S50).

For example, it is assumed that when points in a trajectory forming amoving path in the order of a first point, a second point, a thirdpoint, and a fourth point are stored in the memory, a state satisfyingthe specified condition is detected at the first point.

In this case, the second cleaner 100 b as a following cleaner may becontrolled to remove part (e.g., second point) of the second throughfourth points including the first point and follow a moving path formedby connecting the remaining points, for example, the third point and thefourth point. To this end, the second cleaner 100 b may move to thethird point directly from the current position.

In one embodiment, trajectory information followed by the second cleanerin the stored trajectory information is deleted from the memory. Forexample, when the second cleaner has passed through all of the first tothird points or the second cleaner has moved to the third point directlyfrom the first point, the trajectory information of the first point, thesecond point, and the third point is deleted from the memory. As aresult, the memory shortage problem does not occur.

Since the trajectory information of the first cleaner is controlledaccording to a first-stored first-deleted rule, a queue buffer in afirst-in first-out (FIFO) scheme may also be used as a memory.

Furthermore, in one embodiment, when it is sensed that the secondcleaner satisfies a specified condition for first trajectory informationamong the stored trajectory information, the first cleaner may transmita control command for moving the second cleaner to a positioncorresponding to second trajectory information stored subsequent to thefirst trajectory information. At this time, at least one intermediatetrajectory information may be included between the first trajectoryinformation and the second trajectory information.

Accordingly, here, it may be said that the second cleaner roughlyfollows the first cleaner by omitting the first trajectory informationand the intermediate trajectory information from the moving path of thefirst cleaner. Furthermore, it may also be said that the second cleanerfollows the moving path of the first cleaner from a point correspondingto the second trajectory information.

In addition, when the second cleaner moves to a point corresponding tothe second trajectory information, the first cleaner or the secondcleaner deletes the first trajectory information and the intermediatetrajectory information on which the second cleaner has not moved fromthe memory. Then, when the second cleaner passes the second trajectoryinformation, the second trajectory information is deleted from thememory. At the same time, new trajectory information corresponding tothe movement of the first cleaner is stored in the memory.

Meanwhile, in the present disclosure, the second cleaner may follow themoving path of the first cleaner in a specified sector unit.

Here, the sector unit denotes a virtual area divided by a predeterminedlength or a predetermined size of a moving path to be followed so thatthe second cleaner can efficiently follow the moving path. The entiremoving path of the first cleaner may be divided into a plurality ofsectors. Furthermore, it may be said that a partial moving pathcorresponding to a plurality of trajectory information is included inone sector.

For an example, when the second cleaner follows a moving pathcorresponding to the plurality of trajectory information within a firstsector of the first cleaner, the second cleaner may be controlled toenter into the second sector, which is the next sector, and follow amoving path corresponding to the plurality of trajectory informationwithin the second sector. At this time, when it is determined thatarbitrary trajectory information (including initial trajectoryinformation) within the second sector is in a follow-up disable state,the second cleaner may move to a position of the initial trajectoryinformation of a third sector, which is the next sector of the secondsector.

For another example, the second cleaner may normally follow the movingpath of the first cleaner as it is, and then perform a “sector movingmode” for performing the first cleaner in the foregoing sect unit whenit is sensed that the foregoing specified condition is satisfied withrespect to the arbitrary trajectory information.

When the specified condition is not satisfied for a predetermined periodof time or while passing a predetermined sector subsequent to enteringthe sector moving mode, the second cleaner may be controlled toterminate the “sector moving mode” and follow the moving path of thefirst cleaner again as it is.

For another example, the second cleaner 100 b may enter the sectormoving mode based on obstacle information received from the firstcleaner 100 a or obstacle information sensed through the obstacle sensorof the sensing unit 1400 of the second cleaner 100 b.

Here, the obstacle information may include information on a position,size, width, height, entry possibility of an obstacle, and a number andseparation distance in the case of a plurality of obstacles.Furthermore, the obstacle may include a fixed obstacle such as a wall, afurniture, a fixture, or the like, protruded from the floor of thecleaning area to obstruct moving of the cleaner, and a moving obstacle.When it is determined that a predetermined number or more of obstaclesexist in a moving direction corresponding to the trajectory informationof the first cleaner 100 a based on obstacle information received fromthe first cleaner 100 a, the second cleaner 100 b may enter the sectormoving mode.

For example, when there exist three or more obstacles in the movingdirection corresponding to the trajectory information of the firstcleaner 100 a, it may be set to enter the sector moving mode. On theother hand, for an example, another condition such as a size and heightof an obstacle, and a number and separation distance of a plurality ofobstacles, and the like may be an entry condition to the sector movingmode.

In one example, such an entry condition may be varied through a userinput.

In addition, in one example, when no obstacle is sensed while apredetermined period of time elapses subsequent to the execution of thesector moving mode, the sector moving mode may be canceled so as tofollow the trajectory of the leading cleaner in accordance with atypical follow-up relationship.

Alternatively, in one example, when there is no obstacle informationreceived from the first cleaner 100 a or when the first cleaner 100 a iseasily avoidable but the second cleaner 100 b is not avoidable, evenwhen it is determined that a specified condition is satisfied based onobstacle information sensed by a sensor provided in the second cleaner100 b, it may be possible to enter the sector moving mode.

For example, since the present disclosure is allowed to apply afollow-up relationship even between different types of cleaners, evenwith the same obstacle, there may be a case where the first cleaner 100a can enter, but the second cleaner 100 b cannot enter or pass throughthe obstacle.

Since a follow-up relationship between the first cleaner 100 a and thesecond cleaner 100 b is maintained even in the sector moving mode, thesecond cleaner may be controlled to perform moving by omitting only apartial trajectory complicating the moving path without deviatinggreatly from the trajectory of the first cleaner.

To this end, when entering the sector moving mode, the first cleaner 100a may set a sector including a plurality of trajectory information ofthe first cleaner 100 a on the basis of the current position of thesecond cleaner 100 b. At this time, the size of the sector may be set sothat the length of one side does not exceed the follow-up distancebetween the first cleaner 100 a and the second cleaner 100 b.

In addition, in one example, the size of the sector may be determineddifferently depending on the moving speed corresponding to thetrajectory information of the first cleaner 100 a. For example, when adistance between points corresponding to the trajectory information ofthe first cleaner 100 a is small, that is, in a section where the movingspeed of the first cleaner 100 a is low, the size of the sector may beset smaller than the reference size.

In addition, when a distance between points corresponding to thetrajectory information of the first cleaner 100 a is large, that is, ina section where the moving speed of the first cleaner 100 a is high, thesize of the sector may be set larger than the reference size.

In addition, the sectors may be moved together or set to a new positionaccording to the movement of the second cleaner 100 b.

When it is determined that the first cleaner 100 a satisfies a specifiedcondition based on the identification information of the second cleaner100 b and the obstacle information described above, part of thetrajectory information to be followed may be omitted.

Specifically, when it is determined that a moving path corresponding tothe trajectory information in the set sector is heading toward adirection in which a plurality of obstacles are present, the firstcleaner 100 a may omit part or all of the trajectory information in therelevant sector.

Then, the second cleaner 100 b may be controlled to move out of therelevant sector by another moving path and follow the trajectoryinformation in the next sector of the first cleaner.

However, even at this time, the follow-up relationship between thesecond cleaner 100 b and the first cleaner 100 a is maintained, and thusthe target moving direction of the second cleaner 100 b is preferablycontrolled not to deviate significantly from the recent movementtrajectory of the first cleaner 100 a.

On the other hand, even though there are a plurality of obstacles in theset sector, when it is determined that the trajectory information in therelevant sector is heading toward a direction different from thedirection in which a plurality of obstacles are present, the moving ofthe second cleaner 100 b is controlled for the second cleaner 100 b tosequentially follow points of every moving moment within the sector.

In addition, according to the present disclosure, the second cleaner maydetect the follow-up disable state based on the obstacle information andthe trajectory information of the first cleaner, and the stateinformation of the second cleaner itself, and accordingly determinewhether to follow a plurality of trajectory information within thesector as they are or omit part or all of them, so as to control movingby itself.

Hereinafter, FIG. 10 shows a specific example of the sector moving modedescribed above.

In FIG. 10, when the first cleaner 100 a as the leading cleaner moves ina cleaning area where the plurality of obstacles (B1, B2, B3, B4) arepresent, the second cleaner 100 b, which is the follower cleaner mayreceive such obstacle information from the first cleaner 100 a.

Furthermore, the first cleaner 100 a (or the second cleaner 100 b) maysense that a specified condition is satisfied based on the relativeposition and identification information of the second cleaner 100 b, andthe obstacle information to allow the second cleaner 100 b to be movedin a sector moving mode. Accordingly, the follow-up of the secondcleaner 100 b is controlled in units of the set sectors 10, 10 ₁, 10 ₂,10 n.

In the first sector 10, the trajectory of the first cleaner 100 a isheading toward a position where the three obstacles (B1, B2, B3) arepresent, and a point corresponding to the following trajectory ispassing between a plurality of obstacles (B2, B3).

In one example, the second cleaner 100 b may determine whether thesecond cleaner itself is able to enter based on the obstacle informationand the moving information (i.e., moving by passing between theplurality of obstacles (B2, B3)) received from the first cleaner 100 a.

This may vary depending on the type, operation state, specification andthe like of the second cleaner 100 b. Furthermore, in an example, thesecond cleaner 100 b itself may directly calculate whether or not actualentry is allowed in consideration of information sensed through sensorsprovided in the second cleaner 100 b, the type, operation state andspecification of the second cleaner 100 b, and a separation distancebetween obstacles.

However, in order to prevent a time delay due to an additionaloperation, when a predetermined number or more of obstacles are sensedwithin a sector, and the trajectory of the leading cleaner is headingtoward the obstacles while a sector moving mode is carried out asdescribed above, it is determined as “satisfaction of a specifiedcondition” regardless of whether or not actual entry is allowed.

In FIG. 10, when it is determined as “satisfaction of a specifiedcondition,” the second cleaner 100 b does not follow the movementtrajectory within the sector 10, in other words, removes a plurality oftrajectory information within the sector unit 10 to move out of thesector 10.

At this time, the moving of the second cleaner 100 b proceeds whilefollowing the trajectory of the first cleaner 100 a in the next sector,that is, the second sector 10 ₁. In other words, the second cleaner 100b performs cleaning while leaving the sector 10 to follow the nexttrajectory information of the first cleaner 100 a.

At this time, the setting of the second sector 10 ₁ including the nexttrajectory information of the first cleaner 100 a may be determinedbased on the current moving direction of the second cleaner 100 b andthe position of the next trajectory information of the first cleaner 100a among the remaining directions excluding the moving direction at thetime of determination as satisfaction of a specified condition in theprevious sector, that is, the first sector 10.

The sectors 10, 10 ₁, . . . , 10 _(n) may be set such that part of theprevious sector and part of the next sector overlap with each other sothat there is no interruption in follow-up.

In one example, the second cleaner 100 b may determine a path connectedfrom the current position of the second cleaner 100 b to the position ofthe initial trajectory information of the first cleaner 100 a detectedsubsequent to the first sector 10 through the shortest distance as thenext moving path of the second cleaner 100 b. This may also be referredto as a moving path for entering the second sector 10 ₁.

When it is determined that a complex region, a complex sector, and thelike are finished subsequent to performing a sector moving mode up to ann-th sector 10 n in this manner, the second cleaner 100 b may finish thesector moving mode, and then perform cleaning while following points ofevery moving moment of the first cleaner 100 a again.

As described above, according to an embodiment of the presentdisclosure, the second cleaner may be controlled to normally performcleaning while sequentially following the movement trajectory of thefirst cleaner, and perform cleaning while roughly following the firstcleaner in a predetermined sized sector unit in a situation where acomplex region or a complex sector is present, thereby solving a timedelay problem caused in a complicated situation while maintainingcleaning efficiency according to follow-up.

In addition, in one embodiment, even though the following mobile robotdoes not follow the moving path of the leading mobile robot as it is,when it is sufficient to perform its function, for example, when thefirst mobile robot is a robot cleaner, and the second mobile robot is amobile air conditioner, the second mobile robot may move while roughlyfollowing the trajectory of the first mobile robot in a sector unit fromthe beginning without determining whether or not the next trajectory tobe followed by the second mobile robot satisfies the specified conditiondescribed above. Hereinafter, a method of determining the moving path ofthe second cleaner in the case where part or all of the trajectoryinformation of the first cleaner within the sector is omitted will bedescribed in detail with reference to FIGS. 11A, 11B, and 11C.

When it is sensed that a plurality of obstacles are close to theposition of the next trajectory information to follow at the currentposition of the second cleaner, the controller of the first cleaner maycontrol the moving of the second cleaner to follow the position of thefirst cleaner on another moving path instead of the moving pathincluding the next trajectory information.

To this end, the controller of the first cleaner controls the moving ofthe second cleaner in a “sector moving mode” so that the second cleanerfollows the moving path corresponding to the trajectory informationstored in the first cleaner or the second cleaner in a specified sectorunit. At this time, a moving path corresponding to a plurality oftrajectory information may be included in the sector.

For an example, FIG. 11A shows a case where in the sector moving mode,the trajectory of the first cleaner 100 a written in the sector 10 isdetermined to be heading toward the plurality of obstacles (B1, B2, B3),and completely removed so as not to follow it. In other words, alltrajectories within the sector 10 have been removed.

In this case, a next sector 10 next is set based on the moving directionof the second cleaner 100 b in the sector 10 and the position of thenext trajectory information of the first cleaner 100 a, as illustratedin FIG. 11B. At this time, in order not to miss follow-up, at least partof the previous sector 10 and the next sector 10 next may overlap witheach other.

Next, the second cleaner 100 b must leave the current sector 10 to enterthe next sector 10 next. For example, in FIG. 11B, the moving path ofthe second cleaner 100 b for leaving the sector 10 may be the shortestpath in which the position of the first cleaner 100 a, that is, specifictrajectory information included in the next sector 10 next, is a targetpoint.

Here, the specific trajectory information may be a first trajectory ofthe first cleaner 100 a displayed (or detected) in the next sector 10next, the last trajectory, or any other trajectory.

When only one point 1101 is detected as shown in FIG. 11B, the secondcleaner 100 b may move while following it as a target point. At thistime, the trajectories of the first cleaner 100 a preceding the targetpoint but not included in the next sector 10 next are excluded from themoving path of the second cleaner 100 b. Therefore, the correspondingtrajectory information is deleted from the memory of the first cleaner100 a.

On the other hand, when there are a plurality of points corresponding tothe trajectory displayed (or detected) in the next sector 10 next, thefollow-up path of the second cleaner 100 b varies depending on whichpoint is selected as the target point.

In one example, a path connecting the initial trajectory within thesector and the last trajectory through the shortest distance may bedetermined as the moving path of the second cleaner to performfollow-up. In this case, since the second cleaner moves by omitting allthe trajectories between the initial trajectory and the last trajectory,it may be said that the second cleaner roughly follows the firstcleaner. According to this, a time delay due to follow-up is minimized.

It may be said that the second cleaner has moved on a moving pathdifferent from the moving path corresponding to the trajectoryinformation of the first cleaner within the sector. At this time, sincethe length of the other moving path is shorter than that of the movingpath corresponding to the trajectory information of the first cleaner, atime delay due to follow-up is reduced.

For example, (a) of FIG. 11C shows a case where the second cleaner 100 benters the next sector, and then selects the last point 1102 within thenext sector at the current its own position as the target point toperform follow-up moving. Then, as shown in (b) of FIG. 11C, theremaining trajectories 1103 excluding the last point 1102 are removed,and the second cleaner 100 b moves straight from the current position tothe last point 1102. Therefore, the second cleaner 100 b follows thefirst cleaner on a moving path shorter than the actual moving path ofthe first cleaner 100 a.

On the other hand, in one example, the selection of the target point maybe changed according to the moving information of the first cleanercorresponding to a trajectory within the sector.

For instance, when there are no obstacles but the number of pointscorresponding to the trajectory information within the sector is largerthan the reference value or the interval is narrow, the second cleaner100 b may select the target point as an initial point or a point closethereto to allow the second cleaner 100 b to move run in the same orsimilar manner to the actual trajectory of the first cleaner 100 a.

This is because when the first cleaner 100 a moves slowly even thoughthere are no obstacles, it may be considered that the cleaner 100 a hasperformed cleaning thoroughly due to dust or contaminants within therelevant sector, so as to allow that the second cleaner 100 b to move inthe same or similar manner to the actual trajectory of the first cleaner100 a.

On the contrary, when the number of points corresponding to the movementtrajectory within the sector is small or the interval is very wide, itis considered that the second cleaner 100 b is able to roughly followthe first cleaner 100 a, and the last point or a point close thereto isselected as the target point.

As described above, the moving target point of the second cleaner may bedifferently selected in accordance with the moving information, forexample, the moving speed, of the first cleaner even within the sector,thereby satisfying the opposite needs such as the efficiency offollow-up control and the minimization of time delay in a balancemanner.

Hereinafter, an operation process in the case where the trajectoryinformation of the first cleaner is not detected within the next sectorto be followed will be described in detail with reference to FIGS. 12A,12B, 12C and 12D.

The controller of the first cleaner may control the moving of the secondcleaner in a sector unit including a plurality of trajectoryinformation, and when the follow-up disable state of the second cleaneris sensed, all the trajectory information within the current sector maybe removed to determine the next sector based on the relative positionand moving direction of the second cleaner.

In addition, the first cleaner may control the moving of the othercleaner in a sector unit including a plurality of trajectory informationof the second cleaner so that the second cleaner follows one of thetrajectory information within the determined next sector.

Furthermore, when the second cleaner moves away from the first cleanerto follow one of the trajectory information within the next sector, forexample, moves away out of a predetermined critical follow-up distance,the controller of the first cleaner may change the moving speed of thefirst cleaner or stop the moving of the first cleaner.

Furthermore, when the moving path of the second cleaner 100 b isdetermined within the sector while the second cleaner 100 b performs asector moving mode, the next sector to be followed is determined basedon the moving direction of the second cleaner 100 b and the nextmovement trajectory of the first cleaner 100 a.

At this time, as illustrated in FIG. 12A, there may be a case [1] wherethe movement trajectory of the first cleaner 100 a does not enter intothe next sector (2), but the first cleaner 100 a moves out of the nextsector (2). In this case, the follow-up of the second cleaner 100 b maybe interrupted.

For an example, when the trajectory of the first cleaner 100 a is notdetected within the next sector, at least one of the size and positionof the sector unit may be variably applied.

For example, as illustrated in FIG. 12B, the size of the sector isincreased (10′) until the next trajectory of the first cleaner 100 a isincluded or until the current position of the first cleaner 100 a (notshown). Then, the first cleaner 100 a performs follow-up on a path fromthe current position of the second cleaner 100 b to the position of thefirst cleaner 100 a or the last point of the next trajectory of thefirst cleaner 100 a.

On the other hand, when there is an obstacle within the varied movingpath of the second cleaner 100 b, the second cleaner 100 b may transmitit to the first cleaner 100 a, and thus the second cleaner 100 b may becontrolled to move the re-modified moving path.

For another example, when the trajectory of the first cleaner 100 a isnot detected within the next sector, the number of sectors may befurther increased based on the next sector in which the movementtrajectory of the first cleaner 100 a is not detected, thereby detectingthe next trajectory of the first cleaner 100 a. A difference fromvarying the size of the sector as described above is a selection processof the moving path of the second cleaner 100 b.

Specifically, referring to FIG. 12C, when the trajectory of the firstcleaner 100 a is not detected within the next sector 10 b, a pluralityof additional sectors 10 c, 10 d, 10 a are set in a direction oppositeto the previous sector 10, that is, an upward left direction, withrespect to the next sector 10 b. If the trajectory of the first cleaner100 a is still undetected, then the additional sectors 10 c, 10 d, 10 amay be sequentially set.

The second cleaner 100 b only determines whether or not the trajectoryof the first cleaner 100 a has been detected for each of the additionalsectors 10 c, 10 d, 10 a.

In FIG. 12C, when the movement trajectory of the first cleaner 100 a isdetected in the two additional sectors 10 c, 10 d, it is recognized thatthe additional sector 10 c is first visited, and then the additionalsector 10 d is visited based on move information received from the firstcleaner 100 a.

The second cleaner 100 b enters into the first additional sector 10 c bythe shortest distance in the current sector unit 10 and then enters intothe second additional sector 10 d through the shortest distance. Inother words, the second cleaner 100 b may move in units of additionalsectors set independently of points corresponding to the movementtrajectory of the first cleaner 100 a.

For another example, when the trajectory of the first cleaner 100 a isnot detected within the next sector, if the second cleaner 100 b stopsdriving and the first cleaner 100 a enters into the next sector, thenfollow-up may be resumed.

For example, as illustrated in (a) of FIG. 12D, in the current sector10, even after the second cleaner 100 b is in a follow-up disable state,and the size of the next sector unit 10 next is varied, if thetrajectory of the first cleaner 100 a is not detected in the sector 10next, then the second cleaner 100 b stands by in the current sector 10in a stationary state for the time being.

Next, as illustrated in (b) of FIG. 12, when it is sensed that the firstcleaner 100 a enters into the next sector 10 next (1), the secondcleaner 100 b which has been in the stationary state moves toward theposition of the first cleaner 100 a. This is similar to a state in whichfollow-up is temporarily released and reconnected.

On the other hand, here, whether or not the first cleaner 100 a hasentered may be obtained based on a range of the next sector 10 next anda relative position of the first cleaner 100 a.

As described above, when the trajectory of the first cleaner 100 a isnot detected in the sector 10 next, follow-up may be carried afterwaiting for the first cleaner 100 a to be found without forcibly movingthe second cleaner 100 b, thereby preventing the waste of operation andthe disconnection of follow-up.

Hereinafter, examples in which the second cleaner is allowed to enter,but performs follow-up by removing part of the trajectory of the firstcleaner within the sector since the moving of the first cleaner iscomplicated will be described with reference to FIGS. 13A, 13B, 13C, and13D.

In these examples, the controller of the first cleaner may transmit asignal corresponding to a moving stop command of the second cleaner whenthe entered region is determined to be no-entry region of the secondcleaner. Then, when the first cleaner is sensed to be out of therelevant region, the moving of the second cleaner may be controlled tofollow a moving path corresponding to the trajectory information of themain body stored subsequent to being out of the relevant region.

For example, referring to FIG. 13A, when the first cleaner 100 a, whichis the leading cleaner, performs cleaning while following an obstacle,for example, a wall 50, there may be case where the moving direction isfrequently changed several times according to the shape of the wall 50.

In this case, the controller of the first cleaner 100 a has to changethe driving of the wheel unit 111 several times in order to change themoving direction, but the moving speed of the first cleaner 100 a isalso varied every time the moving direction is changed. For example,since it is required to perform in-place rotation and moving directionchange at each “x” point shown in FIG. 13A, the cleaner moves at adecelerated moving speed (V2), which causes a delay in the cleaningtime.

As a result, in the present disclosure, the second cleaner 100 bfollowing the first cleaner 100 a may recognize that the movingdirection of the first cleaner 100 a is varied based on move informationreceived from the first cleaner 100 a. In this case, the movementtrajectory of the first cleaner 100 a is removed for a time periodduring which the moving direction of the first cleaner 100 a is variedmore than a reference number of times.

As illustrated in FIG. 13B, a region 1310 including the movementtrajectory while the first cleaner 100 a performs in-place rotation anda change of the moving direction several times will be regarded as theforegoing sector to remove the movement trajectory of the region. Then,the second cleaner 100 b moves along a path 1320 connecting the currentposition of the first cleaner 100 a through the shortest straight line.

For another example, there is a case where the first cleaner 100 aenters into a narrow region to leave a movement trajectory 1330 asillustrated in FIG. 13C. At this time, the width (Ds) of the narrowregion is a distance that the first cleaner 100 a and the second cleaner100 b is respectively able to enter, but have difficulty in avoidancewithout any backward movement.

When the second cleaner 100 b enters while following the first cleaner100 a, the maximum interval that is unavoidable without any backwardmovement may be defined as a “reference value of the width”.

When the width of a moving region in which the first cleaner 100 a hasentered is less than the reference value, the controller of the secondcleaner 100 b may control to remove a trajectory 1330 in the relevantmoving region of the first cleaner 100 a, and move along a path 1340connecting the position of the first cleaner through the shorteststraight line at a time point when the first cleaner exits the relevantmoving region.

As described above, when the leading cleaner changes its movingdirection several times in a short period of time, or when the leadingcleaner enters into a narrow region, all movement trajectories in apredetermined period of time or in a narrow region may be removed,thereby minimizing time delay.

Next, a method of moving the first cleaner for maintaining the follow-uprelationship when the second cleaner is unable to enter at all into thesector unit will be described in detail with reference to FIGS. 14A, 14Band 14C.

In other words, FIGS. 14A, 14B, and 14C show a case where the firstcleaner 100 a has no difficulty in entering and moving, but the secondcleaner 100 b is unable to enter at all, and it may occur when the firstcleaner 100 a and the second cleaner 100 b are different types from eachother.

At this time, it may not be possible to determine the possibility ofentry of the second cleaner 100 b by only obstacle information receivedfrom the first cleaner 100 a. Therefore, at this time, it is necessaryto transmit the state information of the following cleaner to theleading cleaner.

First, referring to FIG. 14A, when performing follow-up betweendifferent types of cleaners, a sector unit 1410 in which the firstcleaner 100 a is able to enter but the second cleaner 100 b is unable toenter may occur within a designated cleaning area 1401. The example mayinclude a sill, a carpet, under a low-height furniture, or the like.

In this case, the second cleaner 100 b informs the first cleaner 100 athat it is unable to enter the relevant sector unit 1410 through thecommunication unit. At the same time or sequentially, the second cleaner100 b stops the operation of the traveling unit 1300.

Next, the controller of the second cleaner 100 b controls to follow thetrajectory of the first cleaner 100 a at a time point when the firstcleaner 100 a is sensed to be out of the relevant sector based on moveinformation received from the first cleaner 100 a.

In this situation, the first cleaner 100 a may be controlled in one ofthe following two scenarios.

For example, as illustrated in FIG. 14B, there is a scheme of performingcleaning alone while moving the sector unit 1410 that disallows thesecond cleaner 100 b to enter, and then informing the second cleaner 100b at a time point when the first cleaner 100 a exits the sector 1410 toresume follow-up.

For another example, as illustrated in FIG. 14C, when informationindicating that the second cleaner 100 b is unable to enter the sectorunit 1410 is received from the second cleaner 100 b, the first cleaner100 a does not enter the sector unit 1410 or immediately exits thesector unit 1410. Then, follow-up control is carried out whilemaintaining the following distance with respect to the second cleaner100 b.

At this time, the uncleaned sector unit 1410 may be controlled to allowthe first cleaner 100 a to perform cleaning alone after the cleaning ofthe designated cleaning area 1401 is all completed.

FIGS. 15A, 15B, and 15C are modified examples of follow-up controlbetween the first cleaner and the second cleaner in accordance with theforegoing embodiments of the present disclosure, and here, follow-upcontrol between the first cleaner and a mobile device will be describedin detail. Here, the follow-up control disclosed herein means only thatthe mobile device follows a movement path of the first cleaner.

Referring to FIG. 15A, the first cleaner 100 a may control the follow-upof a mobile device 200 by communicating with the mobile device 200instead of the second cleaner.

Here, the mobile device 200 may not have a cleaning function, and may beany electronic device if it is provided with a driving function. Forexample, the mobile device 200 may include various types of homeappliances or other electronic devices, such as a dehumidifier, ahumidifier, an air purifier, an air conditioner, a smart TV, anartificial intelligent speaker, a digital photographing device, and thelike, with no limit.

In addition, the mobile device 200 may be any device if it is equippedwith a moving function, and may not have a navigation function fordetecting an obstacle by itself or moving up to a predetermineddestination.

The first cleaner 100 a is a robot cleaner having both the navigationfunction and the obstacle detection function and can control thefollow-up of the mobile device 200. The first cleaner 100 a may be a drycleaner or a wet cleaner.

The first cleaner 100 a and the mobile device 200 can communicate witheach other through a network (not shown), but may directly communicatewith each other.

Here, the communication using the network is may be communication using,for example, WLAN, WPAN, Wi-Fi, Wi-Fi Direct™, Digital Living NetworkAlliance (DLNA), Wireless Broadband (WiBro), World Interoperability forMicrowave Access (WiMAX™), etc. The mutual direct communication may beperformed using, for example, UWB, Zigbee™, Z-wave™ Blue-Tooth™, RFID,and Infrared Data Association (IrDA), and the like.

If the first cleaner 100 a and the mobile device 200 are close to eachother, the mobile device 200 may be set to follow the first cleaner 100a through a manipulation in the first cleaner 100 a.

If the first cleaner 100 a and the mobile device 200 are far away fromeach other, although not shown, the mobile device 200 may be set tofollow the first cleaner 100 a through a manipulation in an externalterminal 300 (see FIG. 15A).

Specifically, follow-up relationship between the first cleaner 100 a andthe mobile device 200 may be established through network communicationwith the external terminal 300. Here, the external terminal 300 is anelectronic device capable of performing wired or wireless communication,and may be a tablet, a smart phone, a notebook computer, or the like. Atleast one application related to follow-up control by the first cleaner100 a (hereinafter, “follow-up related application”) may be installed inthe external terminal 300. The user may execute the follow-up relatedapplication installed in the external terminal 300 to select andregister the mobile device 200 subjected to the follow-up control by thefirst cleaner 100 a. When the mobile device 200 subjected to thefollow-up control is registered, the external terminal may recognizeproduct information of the mobile device, and such product informationmay be provided to the first cleaner 100 a via the network.

The external terminal 300 may recognize the position of the firstcleaner 100 a and the position of the registered mobile device 200through communication with the first cleaner 100 a and the registeredmobile device 200. Afterwards, the first cleaner 100 a may move towardthe position of the registered mobile device 200 or the registeredmobile device 200 may move toward the position of the first cleaner 100a according to a control signal transmitted from the external terminal300. When it is detected that the relative positions of the firstcleaner 100 a and the registered mobile device 200 are within apredetermined following distance, the follow-up control for the mobiledevice 200 by the first cleaner 100 a is started. After then, thefollow-up control is performed by direct communication between the firstcleaner 100 a and the mobile device 200 without the intervention of theexternal terminal 300.

The setting of the follow-up control may be released by the operation ofthe external terminal 300 or automatically terminated as the firstcleaner 100 a and the mobile device 200 move away from the predeterminedfollowing distance.

The user can change, add or remove the mobile device 200 to becontrolled by the first cleaner 100 a by manipulating the first cleaner100 a or the external terminal 300. For example, referring to FIG. 15B,the first cleaner 100 a may perform the follow-up control for at leastone mobile device 200 of another cleaner 200 a or 100 b, an air purifier200 b, a humidifier 200 c, and a dehumidifier 200 d.

In general, since the mobile device 200 is different from the firstcleaner 100 a in its function, product size, and moving ability, it isdifficult for the mobile device 200 to follow the movement path of themobile terminal 100 a as it is.

For example, there may be an exceptional situation in which it isdifficult for the mobile device 200 to follow the movement path of thefirst cleaner 100 a according to a moving mode, a geographic feature ofa space, a size of an obstacle, and the like. In consideration of suchan exceptional situation, the mobile device 200 may move or wait byomitting a part of the movement path even if it recognizes the movementpath of the first cleaner 100 a.

To this end, the first cleaner 100 a may detect whether or not theexceptional situation occurs, and control the mobile device 200 to storedata corresponding to the movement path of the first cleaner 100 a in amemory or the like. Then, depending on situations, the first cleaner 100a may control the mobile device 200 to move with deleting part of thestored data or to wait in a stopped state.

FIG. 15C illustrates an example of a follow-up control between the firstcleaner 100 a and the mobile device 200, for example, the air cleaner200 b having a moving function. The first cleaner 100 a and the airpurifier 200 b may include communication modules A and B for determiningrelative positions thereof, respectively. The communication modules Aand B may be one of modules for emitting and receiving an IR signal, anultrasonic signal, a carrier frequency, or an impulse signal. Therecognition of the relative positions through the communication modulesA and B has been described above in detail, so a description thereofwill be omitted.

The air purifier 200 b may receive moving information corresponding to amoving command (e.g., changes in moving including a moving direction anda moving speed, moving stop, etc.) from the first cleaner 100 a, moveaccording to the received moving information, and perform airpurification.

Accordingly, the air purification may be performed in real time withrespect to a cleaning space in which the first cleaner 100 a operates.In addition, since the first cleaner 100 a has already recognized theproduction information related to the mobile device 200, the firstcleaner 100 a can control the air purifier 200 b to record the movinginformation of the first cleaner 100 a, and move with deleting part ofthe moving information or wait in a stopped state.

As described above, according to a plurality of robot cleaners inaccordance with an embodiment of the present disclosure, the secondcleaner may be controlled to normally perform cleaning whilesequentially following the movement trajectory of the first cleaner, androughly follow the first cleaner in a predetermined sized sector unitwhen a movement trajectory is detected within a complex region or acomplex sector or the movement trajectory forms a complex path, therebysolving a time delay problem caused in a complicated situation whilemaintaining cleaning efficiency according to follow-up. Furthermore,even though it is not a case of processing a complex region or sector,when the first cleaner as the leading cleaner changes its movingdirection several times in a short period of time, or when the leadingcleaner enters into a narrow region, all movement trajectories in apredetermined period of time or in a narrow region may be removed,thereby minimizing time delay due to follow-up. Moreover, even when thesecond cleaner follows the first cleaner in a sector unit, the targetpoint within the sector may be selected differently according to themoving information of the first cleaner, thereby satisfying the oppositeneeds such as the efficiency of follow-up control and the minimizationof time delay in a balance manner.

The present disclosure described above may be implemented ascomputer-readable codes on a program-recorded medium. The computerreadable medium includes all kinds of recording devices in which datareadable by a computer system is stored. Examples of thecomputer-readable medium include a hard disk drive (HDD), a solid statedisk (SSD), a silicon disk drive (SDD), a ROM, a RAM, a CD-ROM, amagnetic tape, a floppy disk, an optical data storage device and thelike, and may also be implemented in the form of a carrier wave (e.g.,transmission over the Internet). In addition, the computer may alsoinclude the control unit 1800. The above detailed description should notbe limitedly construed in all aspects and should be considered asillustrative. The scope of the present invention should be determined byrational interpretation of the appended claims, and all changes withinthe scope of equivalents of the present invention are included in thescope of the present disclosure.

What is the claimed is:
 1. A mobile robot, comprising: a traveling unitincluding a motor configured to move a main body by operating the motorto rotate wheels of the main body; a memory configured to storetrajectory information of a moving path corresponding to the movement ofthe main body; a communication unit configured to communicate withanother mobile robot that emits a signal; and a controller configured torecognize a location of the another mobile robot based on the signal,and control the another mobile robot to follow a moving pathcorresponding to the stored trajectory information based on therecognized location, and wherein the controller is configured to controlthe moving of the another mobile robot to remove at least part of thestored trajectory information, and allow the another mobile robot tofollow a moving path corresponding to a sector unit comprising aplurality of remaining trajectory information in response to whether themoving path corresponding to next trajectory information to be followedby the another mobile robot satisfies a specified condition, wherein thecontroller is configured to remove all trajectory information in acurrent sector in response to the satisfaction of the specifiedcondition, determine a next sector based on the current location andmoving direction of the another mobile robot, and output a controlcommand to change or stop a moving speed of the main body when theanother mobile robot moves away from the main body to follow one of thetrajectory information in the determined next sector.
 2. The mobilerobot of claim 1, wherein whether or not the moving path correspondingto next trajectory information to be followed by the another mobilerobot satisfies a specified condition is determined based on at leastone of information on an obstacle sensed through a sensor of the mainbody, identification information of the another mobile robot,information related to an operating state of the another mobile robot,and floor state information on which the another mobile robot islocated.
 3. The mobile robot of claim 1, wherein trajectory informationfollowed by the another mobile robot in the trajectory informationstored in the memory is deleted from the memory.
 4. The mobile robot ofclaim 1, wherein when a moving path corresponding to first trajectoryinformation to be followed at a current location of the another mobilerobot satisfies a specified condition, the controller transmits acontrol command for moving the another mobile robot to a locationcorresponding to second trajectory information stored subsequent to thefirst trajectory information.
 5. The mobile robot of claim 4, wherein atleast one intermediate trajectory information is included between thefirst trajectory information and the second trajectory information, andwherein the controller is configured to delete the first trajectoryinformation and the one or more intermediate trajectory information fromthe memory in response to the movement of the another mobile robot to alocation corresponding to the second trajectory information.
 6. Themobile robot of claim 1, wherein the mobile robot further comprises anobstacle sensor configured to sense a plurality of obstacles, andwherein when it is sensed that a plurality of obstacles have approacheda location of next trajectory information to be followed at a currentlocation of the another mobile robot, the controller is configured tocontrol the moving of the another mobile robot to follow the main bodyon another moving path instead of the moving path including the nexttrajectory information.
 7. The mobile robot of claim 1, wherein thecontroller is configured to control moving to allow the another mobilerobot to follow a moving path corresponding to the stored trajectoryinformation in a sector unit, and a single sector comprises a movingpath corresponding to a plurality of trajectory information.
 8. Themobile robot of claim 1, wherein the controller is configured to controlthe another mobile robot to move on a moving path different from amoving path of the main body corresponding to a plurality of trajectoryinformation in response to the satisfaction of the specified condition,and the different moving path has a shorter path length than the movingpath of the main body.
 9. The mobile robot of claim 1, wherein thecontroller is configured to change at least one of a size and a locationof the next sector to detect the next trajectory information of the mainbody in response to a non-detection of the next trajectory informationof the main body in the next sector.
 10. The mobile robot of claim 1,wherein the controller is configured to increase the number of sectorsto detect the next trajectory information of the main body in responseto a non-detection of the next trajectory information of the main bodyin the next sector.
 11. The mobile robot of claim 1, wherein thecontroller is configured to stop the moving of the another mobile robotuntil the main body enters into the next sector in response to anon-detection of the next trajectory information of the main body in thenext sector.
 12. The mobile robot of claim 1, wherein the controller isconfigured to control the moving of the another mobile robot to move ona path connected by a shortest straight line from a current location ofthe another mobile robot to a current location of the main body, insteadof a moving path corresponding to the trajectory information of the mainbody detected for a predetermined period of time, in response to achange in the moving direction of the main body more than a referencenumber of times for the predetermined period of time.
 13. The mobilerobot of claim 1, wherein the controller is configured to control themoving of the another mobile robot to remove the trajectory informationof the main body in a moving region in which the main body has entered,and follow trajectory information after the main body moves out of therelevant moving region in response to whether a width of the enteredmoving region is less than a reference range.
 14. The mobile robot ofclaim 1, wherein the controller is configured to transmit a signalcorresponding to a moving stop command to the another mobile robot whenit is determined that a region in which the main body enters is anon-entry region of the another mobile robot, and controls the moving ofthe another mobile robot to follow a moving path corresponding to thetrajectory information of the main body stored subsequent to moving outof the relevant region when the main body moves out of the relevantregion.
 15. A plurality of mobile robots comprising a first mobile robotand a second mobile robot, wherein the first mobile robot is configuredto communicate with the second mobile robot that emits a signal torecognize a location of the second mobile robot, store the trajectoryinformation of a moving path corresponding to the movement of the firstmobile robot, and control the second mobile robot to follow a movingpath corresponding to the stored trajectory information based on therecognized location of the second mobile robot, and the first mobilerobot is configured to remove at least part of the stored trajectoryinformation, and controls the second mobile robot to follow a movingpath corresponding to a sector unit comprising a plurality of remainingtrajectory information in response to whether the moving pathcorresponding to next trajectory information to be followed at a currentlocation of the second mobile robot satisfies a specified condition,wherein the first mobile robot is further configured to remove alltrajectory information in a current sector in response to thesatisfaction of the specified condition, determine a next sector basedon the current location and moving direction of the another mobilerobot, and output a control command to change or stop a moving speed ofthe main body when the second mobile robot moves away from a main bodyof the first mobile robot to follow one of the trajectory information inthe determined next sector.
 16. A method of controlling a mobile robot,the method comprising: storing trajectory information of a moving pathcorresponding to movement of a mobile robot main body; communicatingwith another mobile robot that emits a signal to recognize a location ofthe another mobile robot; controlling moving of the another mobile robotsuch that the another mobile robot follows a moving path correspondingto the stored trajectory information based on the recognized location;sensing that a moving path corresponding to next trajectory informationto be followed by the another mobile robot satisfies a specifiedcondition; and controlling the moving of the another mobile robot toremove part of the stored trajectory information such that the anothermobile robot follows a moving path corresponding to a sector unitcomprising a plurality of remaining trajectory information according tothe sensing, wherein the method is further comprising removing alltrajectory information in a current sector in response to thesatisfaction of the specified condition, determining a next sector basedon the current location and moving direction of the another mobilerobot, and outputting a control command to change or stop a moving speedof the main body when the another mobile robot moves away from the mainbody to follow one of the trajectory information in the determined nextsector.
 17. The method of claim 16, wherein whether or not the specifiedcondition is satisfied is determined by at least one of information onan obstacle sensed through a sensor of the main body, identificationinformation of the another mobile robot, information related to anoperating state of the another mobile robot, and floor state informationat a current location of the another mobile robot.
 18. A mobile robot,comprising: a traveling unit including a motor configured to move a mainbody by operating the motor to rotate wheels of the main body; a memoryconfigured to store trajectory information of a moving pathcorresponding to the movement of the main body; a communication unitconfigured to communicate with another mobile robot that emits a signal;and a controller configured to recognize a location of the anothermobile robot based on the signal, and control the another mobile robotto follow a moving path corresponding to the stored trajectoryinformation based on the recognized location, and wherein the controlleris configured to control the moving of the another mobile robot toremove the trajectory information of the main body in a moving region inwhich the main body has entered, and follow trajectory information afterthe main body moves out of the relevant moving region in response towhether a width of the entered moving region is less than a referencerange.